mirror of
https://github.com/logos-messaging/logos-delivery.git
synced 2026-07-30 16:33:14 +00:00
Drop the gate that skipped the docker subset when no PR-built node image is available. Fork PRs lack the quay secrets, so build-docker-image succeeds with an empty output and the subset now falls back to DEFAULT_NWAKU instead of being skipped. Pin DEFAULT_NWAKU to wakuorg/nwaku:v0.38.1. The rolling :latest tag is a daily upstream master build and currently fails to boot with "updateAddressInENR: Public key does not correspond with given private key", which would have made the subset permanently red on fork PRs. s31 passes against v0.38.1 and against the PR-built image. Echo the resolved peer image at the start of the test step. The job name is left static so the check can still be made required.
50 lines
1.5 KiB
YAML
50 lines
1.5 KiB
YAML
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
|
|
|
|
# Consumes the shared library built by ci.yml's `build` job (same run).
|
|
- name: Download liblogosdelivery.so
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
name: liblogosdelivery
|
|
path: tests-e2e/vendor/logos-delivery-python-bindings/lib
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.12'
|
|
cache: 'pip'
|
|
cache-dependency-path: tests-e2e/requirements.txt
|
|
|
|
- name: Install Python deps
|
|
run: pip install -r tests-e2e/requirements.txt
|
|
|
|
- name: Run API/e2e tests (${{ inputs.subset }} subset)
|
|
working-directory: tests-e2e
|
|
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
|