diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7ff06833d..bef3be2d1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -213,6 +213,17 @@ jobs: send-api-e2e-tests: needs: build uses: ./.github/workflows/e2e-api-tests.yml + with: + subset: non-docker + secrets: inherit + + # Docker subset; an empty node_image falls back to DEFAULT_NWAKU (fork PRs lack the quay secrets). + send-api-e2e-docker-tests: + needs: [build, build-docker-image] + uses: ./.github/workflows/e2e-api-tests.yml + with: + subset: docker + node_image: ${{ needs.build-docker-image.outputs.image }} secrets: inherit lint: diff --git a/.github/workflows/e2e-api-tests.yml b/.github/workflows/e2e-api-tests.yml index 00c5a4cfe..95464c749 100644 --- a/.github/workflows/e2e-api-tests.yml +++ b/.github/workflows/e2e-api-tests.yml @@ -2,12 +2,25 @@ name: e2e-api-tests on: workflow_call: + inputs: + subset: + description: "Which wrapper subset to run: 'non-docker' or 'docker'." + type: string + required: false + default: "non-docker" + node_image: + description: "Node image used for the docker peers (docker subset only)." + type: string + required: false + default: "" jobs: api-e2e: runs-on: ubuntu-22.04 timeout-minutes: 45 name: api-e2e + env: + NODE_2: ${{ inputs.node_image }} steps: - name: Checkout code uses: actions/checkout@v4 @@ -29,6 +42,8 @@ jobs: - name: Install Python deps run: pip install -r tests-e2e/requirements.txt - - name: Run API/e2e tests (non-docker subset) + - name: Run API/e2e tests (${{ inputs.subset }} subset) working-directory: tests-e2e - run: pytest tests/wrappers_tests -m "not docker_required" --reruns 2 + run: | + echo "docker peer image: ${NODE_2:-public default (DEFAULT_NWAKU)}" + pytest tests/wrappers_tests -m "${{ inputs.subset == 'docker' && 'docker_required' || 'not docker_required' }}" --reruns 2 diff --git a/tests-e2e/src/env_vars.py b/tests-e2e/src/env_vars.py index 32e96a7e1..6fe752a38 100644 --- a/tests-e2e/src/env_vars.py +++ b/tests-e2e/src/env_vars.py @@ -14,7 +14,7 @@ def get_env_var(var_name, default=None): # Configuration constants. Need to be upercase to appear in reports -DEFAULT_NWAKU = "wakuorg/nwaku:latest" +DEFAULT_NWAKU = "wakuorg/nwaku:v0.38.1" STRESS_ENABLED = False USE_WRAPPERS = True NODE_1 = get_env_var("NODE_1", DEFAULT_NWAKU)