Newer
Older
percord / .github / workflows / docker-publish-gateway.yml
name: docker-publish-gw

on:
    push:
        paths:
            - "gateway/**"

jobs:
    docker-gw:
        runs-on: ubuntu-latest
        steps:
            - name: Checkout
              uses: actions/checkout@v2
            - name: Set up Docker Buildx
              uses: docker/setup-buildx-action@v1
            - name: Cache Docker layers
              uses: actions/cache@v2
              with:
                  path: /tmp/.buildx-cache/gw
                  key: ${{ runner.os }}-buildx-gw-${{ github.sha }}
                  restore-keys: |
                      ${{ runner.os }}-buildx-gw-
            - name: Login to DockerHub
              uses: docker/login-action@v1
              with:
                  username: ${{ secrets.DOCKERHUB_USERNAME }}
                  password: ${{ secrets.DOCKERHUB_TOKEN }}
            - name: Build and push
              uses: docker/build-push-action@v2
              with:
                  context: ./gateway
                  push: true
                  tags: ${{ secrets.DOCKERHUB_TAGS_GW }}
                  cache-from: type=local,src=/tmp/.buildx-cache/gw
                  cache-to: type=local,dest=/tmp/.buildx-cache-new/gw
            - # Hackfix to cleanup cache; replace after buildx 0.6 and BuildKit 0.9 are GA
              # https://github.com/docker/build-push-action/pull/406#issuecomment-879184394
              name: Move cache fix
              run: |
                  rm -rf /tmp/.buildx-cache/gw
                  mv /tmp/.buildx-cache-new/gw /tmp/.buildx-cache/gw