diff --git a/.github/workflows/nightly-canary.yml b/.github/workflows/nightly-canary.yml index fb614ee..4fd5ce1 100644 --- a/.github/workflows/nightly-canary.yml +++ b/.github/workflows/nightly-canary.yml @@ -27,9 +27,6 @@ jobs: - name: Run Noir tests run: nargo test - - name: Run formatter - run: nargo fmt --check - - name: Alert on dead links uses: JasonEtco/create-an-issue@v2 if: ${{ failure() }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c9add2f..1dec562 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -42,3 +42,26 @@ jobs: - name: Run formatter run: nargo fmt --check + + # This is a job which depends on all test jobs and reports the overall status. + # This allows us to add/remove test jobs without having to update the required workflows. + tests-end: + name: Noir End + runs-on: ubuntu-latest + # We want this job to always run (even if the dependant jobs fail) as we want this job to fail rather than skipping. + if: ${{ always() }} + needs: + - test + - format + + steps: + - name: Report overall success + run: | + if [[ $FAIL == true ]]; then + exit 1 + else + exit 0 + fi + env: + # We treat any cancelled, skipped or failing jobs as a failure for the workflow as a whole. + FAIL: ${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') || contains(needs.*.result, 'skipped') }}