From 43c31dbb873719753cd4bd53e175435d2c6c5274 Mon Sep 17 00:00:00 2001 From: "Alex Ellis (OpenFaaS Ltd)" Date: Tue, 21 Jan 2025 12:46:50 +0000 Subject: [PATCH] Upgrade publish action Signed-off-by: Alex Ellis (OpenFaaS Ltd) --- .github/workflows/publish.yaml | 35 +++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index ecafeed..6a98bb4 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -8,27 +8,41 @@ on: jobs: publish: runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master - name: Install Go uses: actions/setup-go@master with: - go-version: "1.23.x" + go-version: 1.23.x - name: Set up QEMU uses: docker/setup-qemu-action@v3 + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 + - name: Get TAG id: get_tag - run: echo ::set-output name=TAG::${GITHUB_REF#refs/tags/} - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 + run: echo TAG=${GITHUB_REF#refs/tags/} >> $GITHUB_ENV + + - name: Get git commit + id: get_git_commit + run: echo "GIT_COMMIT=$(git rev-parse HEAD)" >> $GITHUB_ENV + - name: Get version + id: get_version + run: echo "VERSION=$(git describe --tags --dirty)" >> $GITHUB_ENV + - name: Get Repo Owner + id: get_repo_owner + run: echo "REPO_OWNER=$(echo ${{ github.repository_owner }} | tr '[:upper:]' '[:lower:]')" > $GITHUB_ENV + - name: Login to Docker Registry uses: docker/login-action@v3 with: - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} + username: ${{ github.repository_owner }} + password: ${{ secrets.GITHUB_TOKEN }} registry: ghcr.io + - name: Push containers uses: docker/build-push-action@v6 with: @@ -36,7 +50,10 @@ jobs: file: ./Dockerfile outputs: "type=registry,push=true" platforms: linux/amd64,linux/arm64 + build-args: | + GIT_COMMIT=${{env.GIT_COMMIT}} + VERSION=${{env.VERSION}} tags: | - ghcr.io/openfaas/cron-connector:${{ github.sha }} - ghcr.io/openfaas/cron-connector:${{ steps.get_tag.outputs.TAG }} - ghcr.io/openfaas/cron-connector:latest + ghcr.io/${{ env.REPO_OWNER }}/cron-connector:${{ github.sha }} + ghcr.io/${{ env.REPO_OWNER }}/cron-connector:${{ env.TAG }} + ghcr.io/${{ env.REPO_OWNER }}/cron-connector:latest