From 12dd9d45b54a1129344828afec478f1dad0e689d Mon Sep 17 00:00:00 2001 From: Florian Piesche Date: Wed, 1 Jun 2022 23:40:58 +0100 Subject: [PATCH] Use docker/metadata-action This simplifies specifying tags and will also generate metadata labels for the image as per [OpenContainers spec](https://github.com/opencontainers/image-spec/blob/main/annotations.md) --- .github/workflows/docker-release.yml | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/.github/workflows/docker-release.yml b/.github/workflows/docker-release.yml index d5f0207..ff0e8d8 100644 --- a/.github/workflows/docker-release.yml +++ b/.github/workflows/docker-release.yml @@ -41,10 +41,21 @@ jobs: elif [ ${{ github.event.action }} == "release" ]; then echo "::set-output name=tags::${{ github.event.release.tag_name }}" else - echo "Unknown workflow trigger: ${{ github.event.action }}! Cannot determine tags." + echo "Unknown workflow trigger: ${{ github.event.action }}! Cannot determine default tag." exit 1 fi + - name: Generate Docker image metadata + id: docker-meta + uses: docker/metadata-action@v4 + with: + images: | + ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPO }} + ghcr.io/${{ github.repository_owner }}/${{ secrets.DOCKERHUB_REPO }} + tags: | + raw=${{ steps.tags.outputs.tags }} + raw=latest + - name: setup platform emulator uses: docker/setup-qemu-action@v1 @@ -64,8 +75,5 @@ jobs: file: ./Dockerfile platforms: linux/amd64,linux/arm,linux/arm64/v8 push: true - tags: | - ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPO }}:latest - ${{ secrets.DOCKERHUB_USERNAME }}/${{ secrets.DOCKERHUB_REPO }}:${{ steps.tags.outputs.tags }} - ghcr.io/${{ github.repository_owner }}/${{ secrets.DOCKERHUB_REPO }}:latest - ghcr.io/${{ github.repository_owner }}/${{ secrets.DOCKERHUB_REPO }}:${{ steps.tags.outputs.tags }} + tags: ${{ steps.docker-meta.outputs.tags }} + labels: ${{ steps.docker-meta.outputs.labels }}