From 3b59846e8b2afb2028ca78e4c00a184759add450 Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 21:24:46 +0200 Subject: [PATCH 01/19] CI: skip jobs if no changes to source/tests/cmake config are detected --- .github/workflows/documentation.yml | 4 ++++ .github/workflows/integration.yml | 4 ++++ .github/workflows/random.yml | 4 ++++ .github/workflows/unit.yml | 4 ++++ .github/workflows/update.yml | 4 ++++ 5 files changed, 20 insertions(+) diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index 8e19d0aac5..f1dfc7353c 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -8,6 +8,10 @@ on: pull_request: branches: - main + paths: + - cmake + - examples + - test concurrency: group: doc-${{ github.ref }} diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index ec05c73712..89389856b4 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -8,6 +8,10 @@ on: push: branches: - main + paths: + - cmake + - examples + - test concurrency: group: install-${{ github.ref }} diff --git a/.github/workflows/random.yml b/.github/workflows/random.yml index 61941c9b98..09f8e53964 100644 --- a/.github/workflows/random.yml +++ b/.github/workflows/random.yml @@ -8,6 +8,10 @@ on: pull_request: branches: - main + paths: + - cmake + - examples + - test concurrency: group: random-${{ github.ref }} diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index c5b79f4013..c5a9a2fcbb 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -8,6 +8,10 @@ on: pull_request: branches: - main + paths: + - cmake + - examples + - test concurrency: group: unit-${{ github.ref }} diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 8485cd0495..c6a21b1823 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -8,6 +8,10 @@ on: push: branches: - main + paths: + - cmake + - examples + - test jobs: generate-doc: From 9b779ab3de0dfd0aec881b97a74ae525865fd723 Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 21:26:51 +0200 Subject: [PATCH 02/19] Also watch CMakeLists.txt for changes --- .github/workflows/documentation.yml | 1 + .github/workflows/integration.yml | 1 + .github/workflows/random.yml | 1 + .github/workflows/unit.yml | 1 + .github/workflows/update.yml | 1 + 5 files changed, 5 insertions(+) diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index f1dfc7353c..a295f28468 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -10,6 +10,7 @@ on: - main paths: - cmake + - CMakeLists.txt - examples - test diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 89389856b4..13dacbd1de 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -10,6 +10,7 @@ on: - main paths: - cmake + - CMakeLists.txt - examples - test diff --git a/.github/workflows/random.yml b/.github/workflows/random.yml index 09f8e53964..cb01ccd75a 100644 --- a/.github/workflows/random.yml +++ b/.github/workflows/random.yml @@ -10,6 +10,7 @@ on: - main paths: - cmake + - CMakeLists.txt - examples - test diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index c5a9a2fcbb..cd7fa72895 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -10,6 +10,7 @@ on: - main paths: - cmake + - CMakeLists.txt - examples - test diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index c6a21b1823..52d6208da2 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -10,6 +10,7 @@ on: - main paths: - cmake + - CMakeLists.txt - examples - test From de07c8494151abed806295013acb1200b2a9f96f Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 21:29:29 +0200 Subject: [PATCH 03/19] fixed syntax --- .github/workflows/documentation.yml | 8 ++++---- .github/workflows/integration.yml | 8 ++++---- .github/workflows/random.yml | 8 ++++---- .github/workflows/unit.yml | 8 ++++---- .github/workflows/update.yml | 8 ++++---- 5 files changed, 20 insertions(+), 20 deletions(-) diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index a295f28468..bdcc72f712 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -9,10 +9,10 @@ on: branches: - main paths: - - cmake - - CMakeLists.txt - - examples - - test + - 'cmake/**' + - 'CMakeLists.txt' + - 'examples/**' + - 'test/**' concurrency: group: doc-${{ github.ref }} diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 13dacbd1de..45567dd4a8 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -9,10 +9,10 @@ on: branches: - main paths: - - cmake - - CMakeLists.txt - - examples - - test + - 'cmake/**' + - 'CMakeLists.txt' + - 'examples/**' + - 'test/**' concurrency: group: install-${{ github.ref }} diff --git a/.github/workflows/random.yml b/.github/workflows/random.yml index cb01ccd75a..2918a33d4b 100644 --- a/.github/workflows/random.yml +++ b/.github/workflows/random.yml @@ -9,10 +9,10 @@ on: branches: - main paths: - - cmake - - CMakeLists.txt - - examples - - test + - 'cmake/**' + - 'CMakeLists.txt' + - 'examples/**' + - 'test/**' concurrency: group: random-${{ github.ref }} diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index cd7fa72895..b15dfe6b20 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -9,10 +9,10 @@ on: branches: - main paths: - - cmake - - CMakeLists.txt - - examples - - test + - 'cmake/**' + - 'CMakeLists.txt' + - 'examples/**' + - 'test/**' concurrency: group: unit-${{ github.ref }} diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 52d6208da2..5953030c75 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -9,10 +9,10 @@ on: branches: - main paths: - - cmake - - CMakeLists.txt - - examples - - test + - 'cmake/**' + - 'CMakeLists.txt' + - 'examples/**' + - 'test/**' jobs: generate-doc: From 6f32fe19d0ab6ee9546be0e5c754dd83be015887 Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 21:30:28 +0200 Subject: [PATCH 04/19] Add include folder --- .github/workflows/documentation.yml | 1 + .github/workflows/integration.yml | 1 + .github/workflows/random.yml | 1 + .github/workflows/unit.yml | 1 + .github/workflows/update.yml | 1 + 5 files changed, 5 insertions(+) diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index bdcc72f712..d2e12c2464 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -13,6 +13,7 @@ on: - 'CMakeLists.txt' - 'examples/**' - 'test/**' + - 'include/**' concurrency: group: doc-${{ github.ref }} diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 45567dd4a8..63383f2777 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -13,6 +13,7 @@ on: - 'CMakeLists.txt' - 'examples/**' - 'test/**' + - 'include/**' concurrency: group: install-${{ github.ref }} diff --git a/.github/workflows/random.yml b/.github/workflows/random.yml index 2918a33d4b..2d0278b060 100644 --- a/.github/workflows/random.yml +++ b/.github/workflows/random.yml @@ -13,6 +13,7 @@ on: - 'CMakeLists.txt' - 'examples/**' - 'test/**' + - 'include/**' concurrency: group: random-${{ github.ref }} diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index b15dfe6b20..a7292956ea 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -13,6 +13,7 @@ on: - 'CMakeLists.txt' - 'examples/**' - 'test/**' + - 'include/**' concurrency: group: unit-${{ github.ref }} diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 5953030c75..41dc2bf0c7 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -13,6 +13,7 @@ on: - 'CMakeLists.txt' - 'examples/**' - 'test/**' + - 'include/**' jobs: generate-doc: From 67d526a221fd6ddcc79ed55820c2e159a5bd5e9d Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 22:43:13 +0200 Subject: [PATCH 05/19] Changes how the changes are detected --- .github/workflows/check-changes.yml | 36 +++++++++++++++++++++++++++++ .github/workflows/documentation.yml | 13 ++++++----- .github/workflows/integration.yml | 18 ++++++++++----- .github/workflows/random.yml | 13 ++++++----- .github/workflows/unit.yml | 34 ++++++++++++++++++--------- .github/workflows/update.yml | 12 +++++----- 6 files changed, 91 insertions(+), 35 deletions(-) create mode 100644 .github/workflows/check-changes.yml diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml new file mode 100644 index 0000000000..bc228a0ebd --- /dev/null +++ b/.github/workflows/check-changes.yml @@ -0,0 +1,36 @@ +name: Check for changes that require running the rest of the CI + +on: + workflow_call: + inputs: + directories: + description: 'The directories to check for changes' + required: true + type: string + default: "['cmake/**', 'CMakeLists.txt', 'examples/**', 'test/**', 'include/**']" + outputs: + has_changes: ${{ job.check.outputs.has_changes }} + +jobs: + check: + env: + watch_list: ${{ fromJSON(inputs.directories) }} + runs-on: ubuntu-latest + container: + image: ghcr.io/jfalcou/compilers:v7 + outputs: + has_changes: ${{ steps.check.outputs.has_changes }} + steps: + - id: fetch + name: Fetch current branch + uses: actions/checkout@v4.1.1 + + - id: check + name: Check for changes + run: | + echo "Checking for changes in ${{ env.watch_list }}" + if git diff --quiet HEAD^ HEAD ${{ env.watch_list }}; then + echo "has_changes=yes" >> $GITHUB_ENV + else + echo "has_changes=no" >> $GITHUB_ENV + fi diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index d2e12c2464..be64c4ddbc 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -8,22 +8,23 @@ on: pull_request: branches: - main - paths: - - 'cmake/**' - - 'CMakeLists.txt' - - 'examples/**' - - 'test/**' - - 'include/**' concurrency: group: doc-${{ github.ref }} cancel-in-progress: true jobs: + check-changes: + use: './.github/workflows/check-changes.yml' + with: + directories: "['doc/**']" + ################################################################################################## ## Randomized precision tests ################################################################################################## documentation: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 63383f2777..ae74179661 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -8,23 +8,23 @@ on: push: branches: - main - paths: - - 'cmake/**' - - 'CMakeLists.txt' - - 'examples/**' - - 'test/**' - - 'include/**' concurrency: group: install-${{ github.ref }} cancel-in-progress: true jobs: + check-changes: + use: './.github/workflows/check-changes.yml' + with: + directories: "['cmake/**', 'CMakeLists.txt', 'examples/**', 'test/**', 'include/**', 'doc/**']" ################################################################################################## ## Check install process of EVE via CMake ################################################################################################## install: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [ubuntu-latest] container: image: ghcr.io/jfalcou/compilers:v7 @@ -49,6 +49,8 @@ jobs: ## Check install process of EVE via CPM ################################################################################################## cpm: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} env: BRANCH_NAME: ${{ github.head_ref || github.ref_name }} runs-on: [ubuntu-latest] @@ -70,6 +72,8 @@ jobs: ## Check install process of EVE via FetchContents ################################################################################################## fetch: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} env: BRANCH_NAME: ${{ github.head_ref || github.ref_name }} runs-on: [ubuntu-latest] @@ -91,6 +95,8 @@ jobs: ## Check EVE multi-architecture setup ################################################################################################## multi-arch: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v6 diff --git a/.github/workflows/random.yml b/.github/workflows/random.yml index 2d0278b060..bbfb9f2451 100644 --- a/.github/workflows/random.yml +++ b/.github/workflows/random.yml @@ -8,22 +8,23 @@ on: pull_request: branches: - main - paths: - - 'cmake/**' - - 'CMakeLists.txt' - - 'examples/**' - - 'test/**' - - 'include/**' concurrency: group: random-${{ github.ref }} cancel-in-progress: true jobs: + check-changes: + use: './.github/workflows/check-changes.yml' + with: + directories: "['cmake/**', 'CMakeLists.txt', 'test/random/**', 'include/**']" + ################################################################################################## ## Randomized precision tests ################################################################################################## random: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index a7292956ea..ac475ed4cc 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -8,23 +8,21 @@ on: pull_request: branches: - main - paths: - - 'cmake/**' - - 'CMakeLists.txt' - - 'examples/**' - - 'test/**' - - 'include/**' concurrency: group: unit-${{ github.ref }} cancel-in-progress: true jobs: - + check-changes: + use: './.github/workflows/check-changes.yml' + ################################################################################################## ## Check no PCH mode ################################################################################################## no_pch: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 @@ -57,6 +55,8 @@ jobs: ## Full emulation tests ################################################################################################## nosimd: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 @@ -84,6 +84,8 @@ jobs: ## Mac OS X Targets ################################################################################################## macosx: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [macos-12] strategy: fail-fast: false @@ -106,6 +108,8 @@ jobs: ## Windows Targets ################################################################################################## msvc: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [windows-2022] strategy: fail-fast: false @@ -137,6 +141,8 @@ jobs: ## Host 1 - Pre-Skylake SIMD ISA - clang ################################################################################################## x86-clang: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, generic-x86] container: image: ghcr.io/jfalcou/compilers:v7 @@ -165,7 +171,8 @@ jobs: ## Host 1 - PPC & ARM SVE256/512 Tests ################################################################################################## other-arch: - needs: x86-clang + needs: [check-changes, x86-clang] + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, generic-x86] container: image: ghcr.io/jfalcou/compilers:v7 @@ -195,7 +202,8 @@ jobs: ## Host 1 - Pre-Skylake SIMD ISA - g++ ################################################################################################## x86-gcc: - needs: other-arch + needs: [ check-changes, other-arch ] + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, generic-x86] container: image: ghcr.io/jfalcou/compilers:v7 @@ -224,6 +232,8 @@ jobs: ## Host 2 - Non-X86 - Requires clang and qemu ################################################################################################## arm: + needs: [ check-changes ] + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, avx512] container: image: ghcr.io/jfalcou/compilers:v7 @@ -256,7 +266,8 @@ jobs: ## Host 2 - Post-Skylake SIMD ISA ################################################################################################## avx512: - needs: arm + needs: [ check-changes, arm ] + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, avx512] container: image: ghcr.io/jfalcou/compilers:v7 @@ -284,7 +295,8 @@ jobs: ## Host 2 - Pre-Skylake SIMD ISA - Special cases ################################################################################################## other-cases: - needs: avx512 + needs: [ check-changes, avx512 ] + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, avx512] container: image: ghcr.io/jfalcou/compilers:v7 diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 41dc2bf0c7..f6a7f351d1 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -8,15 +8,15 @@ on: push: branches: - main - paths: - - 'cmake/**' - - 'CMakeLists.txt' - - 'examples/**' - - 'test/**' - - 'include/**' jobs: + check-changes: + use: './.github/workflows/check-changes.yml' + with: + directories: "['doc/**']" generate-doc: + needs: check-changes + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 From 1b8b4c46ea2dc6c75b8762e23b561f18e8954eae Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 22:47:49 +0200 Subject: [PATCH 06/19] fixed syntax --- .github/workflows/documentation.yml | 2 +- .github/workflows/integration.yml | 2 +- .github/workflows/random.yml | 2 +- .github/workflows/unit.yml | 2 +- .github/workflows/update.yml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index be64c4ddbc..d6ea7b9589 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -15,7 +15,7 @@ concurrency: jobs: check-changes: - use: './.github/workflows/check-changes.yml' + uses: './.github/workflows/check-changes.yml' with: directories: "['doc/**']" diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index ae74179661..287effb681 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -15,7 +15,7 @@ concurrency: jobs: check-changes: - use: './.github/workflows/check-changes.yml' + uses: './.github/workflows/check-changes.yml' with: directories: "['cmake/**', 'CMakeLists.txt', 'examples/**', 'test/**', 'include/**', 'doc/**']" diff --git a/.github/workflows/random.yml b/.github/workflows/random.yml index bbfb9f2451..920c957e41 100644 --- a/.github/workflows/random.yml +++ b/.github/workflows/random.yml @@ -15,7 +15,7 @@ concurrency: jobs: check-changes: - use: './.github/workflows/check-changes.yml' + uses: './.github/workflows/check-changes.yml' with: directories: "['cmake/**', 'CMakeLists.txt', 'test/random/**', 'include/**']" diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index ac475ed4cc..b4ae70cb01 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -15,7 +15,7 @@ concurrency: jobs: check-changes: - use: './.github/workflows/check-changes.yml' + uses: './.github/workflows/check-changes.yml' ################################################################################################## ## Check no PCH mode diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index f6a7f351d1..77532495a9 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -11,7 +11,7 @@ on: jobs: check-changes: - use: './.github/workflows/check-changes.yml' + uses: './.github/workflows/check-changes.yml' with: directories: "['doc/**']" generate-doc: From 8ba695fc5f49807398afd655115380e1da77697a Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 22:49:20 +0200 Subject: [PATCH 07/19] fixed syntax (again) --- .github/workflows/check-changes.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index bc228a0ebd..8ea64c60d6 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -9,7 +9,7 @@ on: type: string default: "['cmake/**', 'CMakeLists.txt', 'examples/**', 'test/**', 'include/**']" outputs: - has_changes: ${{ job.check.outputs.has_changes }} + has_changes: ${{ jobs.check.outputs.has_changes }} jobs: check: From ba50923721b78a12c3928f90d599155c80588f12 Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 22:51:29 +0200 Subject: [PATCH 08/19] please work --- .github/workflows/check-changes.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index 8ea64c60d6..dfd62e8ef9 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -9,7 +9,9 @@ on: type: string default: "['cmake/**', 'CMakeLists.txt', 'examples/**', 'test/**', 'include/**']" outputs: - has_changes: ${{ jobs.check.outputs.has_changes }} + has_changes: + description: 'Whether changes were found or not (yes/no)' + value: ${{ jobs.check.outputs.has_changes }} jobs: check: From 049794a58f5755a92485b8b160b18b1766c454b4 Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 22:52:33 +0200 Subject: [PATCH 09/19] forgot required param --- .github/workflows/check-changes.yml | 1 - .github/workflows/unit.yml | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index dfd62e8ef9..9a22699941 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -7,7 +7,6 @@ on: description: 'The directories to check for changes' required: true type: string - default: "['cmake/**', 'CMakeLists.txt', 'examples/**', 'test/**', 'include/**']" outputs: has_changes: description: 'Whether changes were found or not (yes/no)' diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index b4ae70cb01..1e1e53a534 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -16,6 +16,8 @@ concurrency: jobs: check-changes: uses: './.github/workflows/check-changes.yml' + with: + directories: "['cmake/**', 'CMakeLists.txt', 'examples/**', 'test/**', 'include/**']" ################################################################################################## ## Check no PCH mode From 829f9196fdac166ee459877e3307b48f63667fe3 Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 22:53:47 +0200 Subject: [PATCH 10/19] fixed syntax --- .github/workflows/check-changes.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index 9a22699941..0eb729bcec 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -15,7 +15,7 @@ on: jobs: check: env: - watch_list: ${{ fromJSON(inputs.directories) }} + watch_list: "${{ fromJSON(inputs.directories) }}" runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 From fc9cbe2695567e38d9a4953a364c03f61cc9977b Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 22:57:11 +0200 Subject: [PATCH 11/19] go --- .github/workflows/check-changes.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index 0eb729bcec..c35eeb0a4b 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -15,7 +15,8 @@ on: jobs: check: env: - watch_list: "${{ fromJSON(inputs.directories) }}" + # put the list of directories to watch for changes here, convert to space-separated list + watch_list: "${{ join(fromJson(inputs.directories), ' ') }}" runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 From 2a6dc77d71c419cb64e9a36aa8664132e418e82a Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 23:05:47 +0200 Subject: [PATCH 12/19] test --- .github/workflows/check-changes.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index c35eeb0a4b..bcca04321f 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -18,8 +18,6 @@ jobs: # put the list of directories to watch for changes here, convert to space-separated list watch_list: "${{ join(fromJson(inputs.directories), ' ') }}" runs-on: ubuntu-latest - container: - image: ghcr.io/jfalcou/compilers:v7 outputs: has_changes: ${{ steps.check.outputs.has_changes }} steps: From 9dbe034e38f1a880197f3acee0fdc0d1d2f6c138 Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 23:13:36 +0200 Subject: [PATCH 13/19] go --- .github/workflows/check-changes.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index bcca04321f..e9a839b868 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -29,7 +29,7 @@ jobs: name: Check for changes run: | echo "Checking for changes in ${{ env.watch_list }}" - if git diff --quiet HEAD^ HEAD ${{ env.watch_list }}; then + if git diff --quiet origin/main HEAD -- ${{ env.watch_list }}; then echo "has_changes=yes" >> $GITHUB_ENV else echo "has_changes=no" >> $GITHUB_ENV From c667fb1d8ba6dbd4044788db03d17f9d455d092c Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 23:15:46 +0200 Subject: [PATCH 14/19] go --- .github/workflows/check-changes.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index e9a839b868..b1f3e307b7 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -29,7 +29,7 @@ jobs: name: Check for changes run: | echo "Checking for changes in ${{ env.watch_list }}" - if git diff --quiet origin/main HEAD -- ${{ env.watch_list }}; then + if git diff --quiet HEAD^ -- ${{ env.watch_list }}; then echo "has_changes=yes" >> $GITHUB_ENV else echo "has_changes=no" >> $GITHUB_ENV From eee2d56da08352a1f747a92a89186de633320382 Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 23:23:36 +0200 Subject: [PATCH 15/19] go --- .github/workflows/check-changes.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index b1f3e307b7..4860f9e43b 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -24,12 +24,14 @@ jobs: - id: fetch name: Fetch current branch uses: actions/checkout@v4.1.1 + with: + fetch-depth: 2 - id: check name: Check for changes run: | echo "Checking for changes in ${{ env.watch_list }}" - if git diff --quiet HEAD^ -- ${{ env.watch_list }}; then + if git diff --quiet HEAD^ HEAD -- ${{ env.watch_list }}; then echo "has_changes=yes" >> $GITHUB_ENV else echo "has_changes=no" >> $GITHUB_ENV From 3cd009820e3ca9f4f680dd8f6cf8b641a5db0302 Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 23:51:12 +0200 Subject: [PATCH 16/19] fixed inverted logic in check-changes.yml --- .github/workflows/check-changes.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index 4860f9e43b..e637b7385f 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -32,7 +32,7 @@ jobs: run: | echo "Checking for changes in ${{ env.watch_list }}" if git diff --quiet HEAD^ HEAD -- ${{ env.watch_list }}; then - echo "has_changes=yes" >> $GITHUB_ENV - else echo "has_changes=no" >> $GITHUB_ENV + else + echo "has_changes=yes" >> $GITHUB_ENV fi From 8836481fe4687ab53aba1e01ee3c0211dcd8febf Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Mon, 27 May 2024 23:55:32 +0200 Subject: [PATCH 17/19] go --- .github/workflows/check-changes.yml | 6 ++++-- .github/workflows/unit.yml | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check-changes.yml b/.github/workflows/check-changes.yml index e637b7385f..15fcd25c9e 100644 --- a/.github/workflows/check-changes.yml +++ b/.github/workflows/check-changes.yml @@ -32,7 +32,9 @@ jobs: run: | echo "Checking for changes in ${{ env.watch_list }}" if git diff --quiet HEAD^ HEAD -- ${{ env.watch_list }}; then - echo "has_changes=no" >> $GITHUB_ENV + echo "has_changes=no" >> "$GITHUB_OUTPUT" + echo "No changes found in ${{ env.watch_list }}" else - echo "has_changes=yes" >> $GITHUB_ENV + echo "has_changes=yes" >> "$GITHUB_OUTPUT" + echo "Found changes in ${{ env.watch_list }}" fi diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index 1e1e53a534..f88670fbd5 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -71,6 +71,7 @@ jobs: - { comp: gcc , arch: x86 , opts: -DEVE_NO_SIMD } steps: + if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} From 6e4dd14fb5e43b7355c16263a614954786b6a82e Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Tue, 28 May 2024 00:05:12 +0200 Subject: [PATCH 18/19] early exit in job matrix --- .github/workflows/documentation.yml | 6 ++-- .github/workflows/random.yml | 5 ++- .github/workflows/unit.yml | 49 +++++++++++++++++++---------- 3 files changed, 40 insertions(+), 20 deletions(-) diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index d6ea7b9589..c5acc6bd58 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -17,14 +17,13 @@ jobs: check-changes: uses: './.github/workflows/check-changes.yml' with: - directories: "['doc/**']" + directories: "['test/doc/**']" ################################################################################################## ## Randomized precision tests ################################################################################################## documentation: needs: check-changes - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 @@ -38,6 +37,9 @@ jobs: - { comp: clang, arch: x86 , opts: -msse2 , pch: OFF} - { comp: gcc , arch: x86 , opts: -msse2 , pch: OFF} steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 diff --git a/.github/workflows/random.yml b/.github/workflows/random.yml index 920c957e41..1b59b05406 100644 --- a/.github/workflows/random.yml +++ b/.github/workflows/random.yml @@ -24,7 +24,6 @@ jobs: ################################################################################################## random: needs: check-changes - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 @@ -36,6 +35,10 @@ jobs: - { comp: clang, arch: x86 , opts: -mavx2 } - { comp: clang, arch: aarch64, opts: -Wno-psabi} steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 + - name: Fetch current branch uses: actions/checkout@v4.1.1 diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index f88670fbd5..ca3989c063 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -23,8 +23,7 @@ jobs: ## Check no PCH mode ################################################################################################## no_pch: - needs: check-changes - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} + needs: check-changes runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 @@ -36,6 +35,9 @@ jobs: - { comp: clang, arch: x86 , opts: -msse2 } - { comp: gcc , arch: x86 , opts: -msse2 } steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Prepare EVE with ${{ matrix.cfg.comp }} @ ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -58,7 +60,6 @@ jobs: ################################################################################################## nosimd: needs: check-changes - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: ubuntu-latest container: image: ghcr.io/jfalcou/compilers:v7 @@ -69,9 +70,10 @@ jobs: cfg: - { comp: clang , arch: x86 , opts: -DEVE_NO_SIMD } - { comp: gcc , arch: x86 , opts: -DEVE_NO_SIMD } - steps: - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -87,8 +89,7 @@ jobs: ## Mac OS X Targets ################################################################################################## macosx: - needs: check-changes - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} + needs: check-changes runs-on: [macos-12] strategy: fail-fast: false @@ -96,6 +97,9 @@ jobs: cfg: - { comp: clang , arch: x86_osx, opts: -mavx } steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -112,15 +116,16 @@ jobs: ################################################################################################## msvc: needs: check-changes - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [windows-2022] strategy: fail-fast: false matrix: cfg: - { mode: Debug, options: "-DEVE_NO_FORCEINLINE"} - steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for MSVC ${{ matrix.cfg.mode }} ${{ matrix.cfg.options }} @@ -145,7 +150,6 @@ jobs: ################################################################################################## x86-clang: needs: check-changes - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, generic-x86] container: image: ghcr.io/jfalcou/compilers:v7 @@ -157,8 +161,10 @@ jobs: - { comp: clang , arch: x86, opts: -msse4.2 } - { comp: clang , arch: x86, opts: -mavx } - { comp: clang , arch: x86, opts: -mavx2 } - steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -175,7 +181,6 @@ jobs: ################################################################################################## other-arch: needs: [check-changes, x86-clang] - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, generic-x86] container: image: ghcr.io/jfalcou/compilers:v7 @@ -188,6 +193,9 @@ jobs: - { comp: gcc, arch: sve512, opts: -Wno-psabi} - { comp: gcc, arch: ppc64 , opts: -Wno-psabi} steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Prepare EVE with ${{ matrix.cfg.comp }} @ ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -206,7 +214,6 @@ jobs: ################################################################################################## x86-gcc: needs: [ check-changes, other-arch ] - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, generic-x86] container: image: ghcr.io/jfalcou/compilers:v7 @@ -218,8 +225,10 @@ jobs: - { comp: gcc , arch: x86, opts: -msse4.2 } - { comp: gcc , arch: x86, opts: -mavx } - { comp: gcc , arch: x86, opts: -mavx2 } - steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -236,7 +245,6 @@ jobs: ################################################################################################## arm: needs: [ check-changes ] - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, avx512] container: image: ghcr.io/jfalcou/compilers:v7 @@ -248,6 +256,9 @@ jobs: - { comp: clang, arch: aarch64 , opts: -Wno-psabi} - { comp: clang, arch: arm , opts: -Wno-psabi} steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Prepare EVE with ${{ matrix.cfg.comp }} @ ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -270,7 +281,6 @@ jobs: ################################################################################################## avx512: needs: [ check-changes, arm ] - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, avx512] container: image: ghcr.io/jfalcou/compilers:v7 @@ -283,6 +293,9 @@ jobs: - { comp: gcc , arch: x86 , opts: -march=skylake-avx512 } steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -299,7 +312,6 @@ jobs: ################################################################################################## other-cases: needs: [ check-changes, avx512 ] - if: ${{ needs.check-changes.outputs.has_changes == 'yes' }} runs-on: [self-hosted, avx512] container: image: ghcr.io/jfalcou/compilers:v7 @@ -315,6 +327,9 @@ jobs: - { comp: gcc , arch: x86 , opts: "-mavx2 -mbmi2 -DEVE_USE_BMI_ON_AVX2" } steps: + - name: Early exit if no changes + if: ${{ needs.check-changes.outputs.has_changes == 'no' }} + run: exit 0 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} From b7535b1aa38f40f8728fb062f683a02bcc8d556b Mon Sep 17 00:00:00 2001 From: SadiinsoSnowfall Date: Tue, 28 May 2024 00:48:14 +0200 Subject: [PATCH 19/19] attempt to prevent the jobs from running when canceled --- .github/workflows/documentation.yml | 3 ++- .github/workflows/random.yml | 3 ++- .github/workflows/unit.yml | 30 +++++++++++++++++++---------- 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml index c5acc6bd58..c87dc53150 100644 --- a/.github/workflows/documentation.yml +++ b/.github/workflows/documentation.yml @@ -39,7 +39,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 diff --git a/.github/workflows/random.yml b/.github/workflows/random.yml index 1b59b05406..dd4cb92502 100644 --- a/.github/workflows/random.yml +++ b/.github/workflows/random.yml @@ -37,7 +37,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index ca3989c063..512d13391e 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -37,7 +37,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Prepare EVE with ${{ matrix.cfg.comp }} @ ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -73,7 +74,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -99,7 +101,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -125,7 +128,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for MSVC ${{ matrix.cfg.mode }} ${{ matrix.cfg.options }} @@ -164,7 +168,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -195,7 +200,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Prepare EVE with ${{ matrix.cfg.comp }} @ ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -228,7 +234,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -258,7 +265,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Prepare EVE with ${{ matrix.cfg.comp }} @ ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -295,7 +303,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }} @@ -329,7 +338,8 @@ jobs: steps: - name: Early exit if no changes if: ${{ needs.check-changes.outputs.has_changes == 'no' }} - run: exit 0 + continue-on-error: true + run: exit 1 - name: Fetch current branch uses: actions/checkout@v4.1.1 - name: Running CMake for ${{ matrix.cfg.comp }} on ${{ matrix.cfg.arch }} with ${{ matrix.cfg.opts }}