From d65b2190e220af38f5e5233dc7a32b1ce0e78e17 Mon Sep 17 00:00:00 2001 From: Emil Simeonov Date: Sat, 20 Jun 2026 23:25:49 +0200 Subject: [PATCH] ci: single molecule job running all pairs in parallel Gitea Actions does not honor fail-fast/max-parallel for cancelling other matrix runners when one fails. Use a single molecule job that runs all (scenario, platform) pairs via run_molecule_parallel.py. This gives true parallel execution + immediate termination on the first failure, which is what we need to debug efficiently. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com> --- .gitea/workflows/ci.yml | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 265cae6..e6497a5 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -29,24 +29,16 @@ jobs: molecule-tests: needs: quality runs-on: docker - strategy: - fail-fast: true - matrix: - runner-index: [0, 1, 2] steps: - uses: actions/checkout@v4 - name: Set up environment run: make setup - - name: Discover assigned test pairs - run: | - . .venv/bin/activate - PAIRS=$(python3 scripts/distribute_molecule.py --runner-index ${{ matrix.runner-index }} --max-runners 3) - echo "Assigned pairs: $PAIRS" - echo "TEST_PAIRS=$PAIRS" >> $GITHUB_ENV - - name: Run molecule tests + - name: Run all molecule tests in parallel run: | set -euo pipefail . .venv/bin/activate export DOCKER_HOST="unix:///run/user/$(id -u)/docker.sock" export ANSIBLE_INJECT_INVOCATION=1 - python3 scripts/run_molecule_parallel.py $TEST_PAIRS + PAIRS=$(python3 scripts/distribute_molecule.py --runner-index 0 --max-runners 1) + echo "Running all pairs in parallel: $PAIRS" + python3 scripts/run_molecule_parallel.py $PAIRS