From 69991279ca459df130729d388995c5daa3e665f5 Mon Sep 17 00:00:00 2001 From: Saylor Berman Date: Thu, 26 Oct 2023 08:25:23 -0600 Subject: [PATCH] Fix conformance release workflow (#1198) 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 5a12fc884..9536cd83b 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