From d1ef1a9cb2b358aaf60a6757e2e8405dbf78ef68 Mon Sep 17 00:00:00 2001 From: ilangelov Date: Sun, 23 Feb 2025 14:08:40 +0200 Subject: [PATCH] Update build-and-push.yml --- .github/workflows/build-and-push.yml | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-and-push.yml b/.github/workflows/build-and-push.yml index 1f423b16a8..ce50e63d9e 100644 --- a/.github/workflows/build-and-push.yml +++ b/.github/workflows/build-and-push.yml @@ -8,26 +8,39 @@ on: - main workflow_dispatch: - jobs: build-and-push: - if: github.event.pull_request.merged == true && contains(github.event.pull_request.labels.*.name, 'CI:Build') runs-on: ubuntu-latest - steps: - name: Checkout code uses: actions/checkout@v4 + - name: Fetch PR labels + id: get-labels + run: | + PR_NUMBER=$(jq --raw-output .pull_request.number "$GITHUB_EVENT_PATH") + LABELS=$(gh pr view $PR_NUMBER --json labels --jq '.labels[].name' || echo "") + echo "PR_LABELS=${LABELS}" >> $GITHUB_ENV + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Check if PR has CI:Build label + if: contains(env.PR_LABELS, 'CI:Build') + run: echo "CI:Build label found, proceeding with build." + - name: Set up Docker Buildx + if: contains(env.PR_LABELS, 'CI:Build') uses: docker/setup-buildx-action@v3 - name: Log in to Docker Hub + if: contains(env.PR_LABELS, 'CI:Build') uses: docker/login-action@v3 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - name: Build and push Docker image + if: contains(env.PR_LABELS, 'CI:Build') run: | docker build -t ${{ secrets.DOCKER_USERNAME }}/go-ethereum:latest . docker push ${{ secrets.DOCKER_USERNAME }}/go-ethereum:latest