From 8bec28ce4d4e26178cb6a77933ecc4c22bb00dd9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20=C3=81lvaro?= Date: Sat, 6 Nov 2021 11:36:12 +0100 Subject: [PATCH] ci: Add debug mode to publish workflow --- .github/workflows/publish.yml | 85 ++++++++++++++++++++++------------- 1 file changed, 54 insertions(+), 31 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index b505a99..9efbe00 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -9,7 +9,7 @@ on: - 'LICENSE' release: types: - - created + - published env: GITHUB_REF_NAME: ${{ github.event.release.tag_name }} @@ -17,11 +17,61 @@ env: PLATFORMS: linux/amd64,linux/arm64,linux/arm/v7 CACHE_PATH: /tmp/.buildx-docker-salt-master-cache EXTRA_REGISTRIES: ghcr.io quay.io + DEBUG: true jobs: + metadata: + name: Metadata + runs-on: ubuntu-latest + outputs: + tags: ${{ steps.tags.outputs.tags }} + vcs_ref: ${{ steps.vcs_ref.outputs.vcs_ref }} + created_on: ${{ steps.created_on.outputs.created_on }} + steps: + - name: Image Tags + id: tags + run: | + IMAGE_TAG="${GITHUB_REF_NAME:-latest}" + DOCKER_IMAGE="${IMAGE_NAME}:${IMAGE_TAG}" + TAGS="${DOCKER_IMAGE}" + for registry in ${EXTRA_REGISTRIES}; do + TAGS="${TAGS},${registry}/${DOCKER_IMAGE}" + done + + echo "Image Tag: '${IMAGE_TAG}'" + echo "Docker image: '${DOCKER_IMAGE}'" + echo "Tags: ${TAGS}" + + echo ::set-output name=tags::${TAGS} + + - name: VCS ref + id: vcs_ref + run: | + VCS_REF="${GITHUB_SHA::8}" + echo "VCS ref: ${VCS_REF}" + echo ::set-output name=vcs_ref::${VCS_REF} + + - name: Created On + id: created_on + run: | + CREATED_ON="$(date -u +"%Y-%m-%dT%H:%M:%SZ")" + echo "Created on: ${CREATED_ON}" + echo ::set-output name=created_on::${CREATED_ON} + + - name: Dump environment + if: ${{ env.DEBUG }} == 'true' + run: env | sort + - name: Dump GitHub context + if: ${{ env.DEBUG }} == 'true' + env: + GITHUB_CONTEXT: ${{ toJson(github) }} + run: echo "${GITHUB_CONTEXT}" + publish: name: Publish runs-on: ubuntu-latest + needs: metadata + if: ${{ env.DEBUG }} != 'false' steps: - name: Checkout repository uses: actions/checkout@v2.4.0 @@ -60,33 +110,6 @@ jobs: username: ${{ secrets.QUAYIO_USERNAME }} password: ${{ secrets.QUAYIO_PASSWORD }} - - name: Prepare metadata - id: metadata - run: | - # Tags - TAG="${GITHUB_REF_NAME:-latest}" - echo "Tag: ${TAG}" - - DOCKER_IMAGE="${IMAGE_NAME}:${TAG}" - echo "Docker image: ${DOCKER_IMAGE}" - - TAGS="${DOCKER_IMAGE}" - for registry in ${EXTRA_REGISTRIES}; do - TAGS="${TAGS},${registry}/${DOCKER_IMAGE}" - done - echo "Tags: ${TAGS}" - - # Build args - VCS_REF="${GITHUB_SHA::8}" - echo "VCS ref: ${VCS_REF}" - - CREATED_ON="$(date +"%Y-%m-%d %H:%M:%S%:z")" - echo "Created on: ${CREATED_ON}" - - echo ::set-output name=tags::${TAGS} - echo ::set-output name=vcs_ref::${VCS_REF} - echo ::set-output name=created_on::${CREATED_ON} - - name: Build uses: docker/build-push-action@v2.7.0 with: @@ -94,9 +117,9 @@ jobs: file: ./Dockerfile platforms: ${{ env.PLATFORMS }} build-args: | - VCS_REF=${{ steps.metadata.outputs.vcs_ref }} - BUILD_DATE=${{ steps.metadata.outputs.created_on }} + VCS_REF=${{ needs.metadata.outputs.vcs_ref }} + BUILD_DATE=${{ needs.metadata.outputs.created_on }} cache-from: type=local,src=${{ env.CACHE_PATH }} cache-to: type=local,dest=${{ env.CACHE_PATH }} push: true - tags: ${{ steps.metadata.outputs.tags }} + tags: ${{ needs.metadata.outputs.tags }}