From 67594dc6a6686d0bcff289a0d2e18e2199c9821e Mon Sep 17 00:00:00 2001 From: Molecule AI SDK-Dev Date: Sat, 16 May 2026 21:03:46 +0000 Subject: [PATCH] feat(ci): add CI / all-required sentinel job MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Renames workflow name from "Test" → "CI" and adds an all-required sentinel job that aggregates the 3.11/3.12/3.13 matrix results into a single CI / all-required (pull_request) context. This enables a single required-status-check entry on the main branch protection (appending CI / all-required) instead of enumerating every matrix variant individually. Implements: molecule-ai/molecule-sdk-python#11 Co-Authored-By: Claude Opus 4.7 --- .gitea/workflows/ci.yml | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 7dfd1d0..49bf3ce 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -1,4 +1,4 @@ -name: Test +name: CI on: push: @@ -27,3 +27,24 @@ jobs: - name: Lint run: pip install ruff && ruff check molecule_agent/ molecule_plugin/ + + all-required: + name: all-required + needs: [test] + # required: all matrix variants must succeed + if: always() + runs-on: ubuntu-latest + steps: + - name: Verify all required jobs passed + run: | + # Collect results from all test matrix variants + results="${{ needs.test.result }}" + echo "Matrix results: $results" + # Any result that is not "success" is a failure condition + if [[ "$results" == *"failure"* ]] || \ + [[ "$results" == *"cancelled"* ]] || \ + [[ "$results" == *"skipped"* ]]; then + echo "One or more required jobs did not succeed: $results" + exit 1 + fi + echo "All required jobs passed." -- 2.52.0