From 974702f14c4f7d4a744e50d97bc83ecef89d4d88 Mon Sep 17 00:00:00 2001 From: Saylor Berman Date: Wed, 25 Oct 2023 08:12:16 -0600 Subject: [PATCH] Fix conformance release workflow Problem: The job used in the conformance tests to wait for the release to exist wasn't working properly. It only saw jobs in progress, and not jobs that are pending, which is what we needed to wait for. Solution: Removed the action and replaced with a basic polling loop to ensure the NGF images exist before continuing with the tests. --- .github/workflows/conformance.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/conformance.yml b/.github/workflows/conformance.yml index 5a12fc884a..9536cd83ba 100644 --- a/.github/workflows/conformance.yml +++ b/.github/workflows/conformance.yml @@ -14,6 +14,10 @@ on: schedule: - cron: "0 4 * * *" # run every day at 4am UTC +defaults: + run: + shell: bash + concurrency: group: ${{ github.ref_name }}-conformance cancel-in-progress: true @@ -134,19 +138,16 @@ jobs: - name: Wait for release to exist if: startsWith(github.ref, 'refs/tags/') - uses: lewagon/wait-on-check-action@e106e5c43e8ca1edea6383a39a01c5ca495fd812 # v1.3.1 - with: - ref: ${{ github.ref }} - check-name: 'Build Image' - repo-token: ${{ secrets.GITHUB_TOKEN }} + run: | + REF=${{ github.ref_name }} + until docker pull ghcr.io/nginxinc/nginx-gateway-fabric:${REF#v}; do sleep 5; done + until docker pull ghcr.io/nginxinc/nginx-gateway-fabric/nginx:${REF#v}; do sleep 5; done - name: Setup conformance tests run: | ngf_prefix=$(echo ${{ steps.ngf-meta.outputs.tags }} | cut -d ":" -f 1) ngf_tag=$(echo ${{ steps.ngf-meta.outputs.tags }} | cut -d ":" -f 2) - if [ ${{ github.event_name }} == "schedule" ]; then - export GW_API_VERSION=main - fi + if [ ${{ github.event_name }} == "schedule" ]; then export GW_API_VERSION=main; fi make install-ngf-local-no-build NGF_PREFIX=${ngf_prefix} NGF_TAG=${ngf_tag} working-directory: ./conformance