Skip to content

fix(api): make /api/auctions-geo reuse the SWR-cached /api/auctions r… #7

fix(api): make /api/auctions-geo reuse the SWR-cached /api/auctions r…

fix(api): make /api/auctions-geo reuse the SWR-cached /api/auctions r… #7

Workflow file for this run

# Build the zvg-immo image and push it to GitHub Container Registry.
#
# Image is consumed by the production Ansible deployment
# (roles/zvg-immo/ in the ansible repo) which `docker compose pull`s the tag
# specified in its docker-compose.yml.j2 template (default: `:latest` on
# default branch, or a pinned `:sha-<short>` for reproducible deploys).
#
# Mirrors haex-claude-proxy/.github/workflows/build-image.yml structure
# (multi-arch amd64+arm64, GHA cache, metadata-action tag scheme).
name: Build zvg-immo image
on:
push:
branches:
- main
tags:
- "v*"
paths:
- "Dockerfile"
- "app.vue"
- "nuxt.config.ts"
- "tsconfig.json"
- "package.json"
- "pnpm-lock.yaml"
- "assets/**"
- "components/**"
- "lib/**"
- "pages/**"
- "scripts/**"
- "server/**"
- "types/**"
- ".github/workflows/build-image.yml"
workflow_dispatch:
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v6
- name: Set up QEMU (multi-arch emulation for arm64 builds)
uses: docker/setup-qemu-action@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4
- name: Log in to GHCR
uses: docker/login-action@v4
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Compute image tags
id: meta
uses: docker/metadata-action@v6
with:
images: ghcr.io/${{ github.repository_owner }}/zvg-immo
tags: |
type=ref,event=branch
type=ref,event=tag
type=sha,format=short
type=raw,value=latest,enable={{is_default_branch}}
- name: Build and push
uses: docker/build-push-action@v7
with:
context: .
file: Dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
platforms: linux/amd64,linux/arm64
cache-from: type=gha
cache-to: type=gha,mode=max