cloud-tasks-emulator 0.1.1

Local emulator of the Google Cloud Tasks v2 API
Documentation
name: Image

on:
  push:
    tags: ["v*"]

permissions:
  contents: read
  packages: write

env:
  IMAGE: ghcr.io/${{ github.repository }}
  TOKEN: ${{ secrets.GITHUB_TOKEN }}

jobs:
  build:
    strategy:
      matrix:
        include:
          - arch: amd64
            runner: ubuntu-24.04
          - arch: arm64
            runner: ubuntu-24.04-arm
    runs-on: ${{ matrix.runner }}
    steps:
      - uses: actions/checkout@v7
      - run: echo "$TOKEN" | docker login ghcr.io -u "$GITHUB_ACTOR" --password-stdin
      - run: |
          tag="$IMAGE:${GITHUB_REF_NAME#v}-${{ matrix.arch }}"
          docker build -t "$tag" .
          docker push "$tag"

  publish:
    needs: build
    runs-on: ubuntu-24.04
    steps:
      - run: echo "$TOKEN" | docker login ghcr.io -u "$GITHUB_ACTOR" --password-stdin
      - run: |
          version="${GITHUB_REF_NAME#v}"
          docker buildx imagetools create -t "$IMAGE:$version" -t "$IMAGE:latest" \
            "$IMAGE:$version-amd64" "$IMAGE:$version-arm64"