From 426278055e37de3fa1524335e301ed71a7c8c28b Mon Sep 17 00:00:00 2001 From: Shravan Vasista Date: Mon, 4 Aug 2025 18:02:58 +0530 Subject: [PATCH 1/5] add concurrency control and `fail-fast: false` to `build` and `test` workflows --- .github/workflows/build.yaml | 5 +++++ .github/workflows/test.yaml | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index a6db1fcb2..56ddbf1b1 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -7,6 +7,10 @@ on: name: Build +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + env: RUSTFLAGS: >- -D warnings @@ -17,6 +21,7 @@ jobs: name: Build runs-on: windows-latest strategy: + fail-fast: false # Allow all matrix variants to complete even if some fail matrix: wdk: - Microsoft.WindowsWDK.10.0.22621 # NI WDK diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 7c7fe4cde..6969b0d5e 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -7,11 +7,16 @@ on: name: Test +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: test: name: Test runs-on: windows-latest strategy: + fail-fast: false # Allow all matrix variants to complete even if some fail matrix: wdk: - Microsoft.WindowsWDK.10.0.22621 # NI WDK From 5c77d120aef0732e3dba75fb14b67b2381a2c9b5 Mon Sep 17 00:00:00 2001 From: Shravan Vasista Date: Mon, 4 Aug 2025 18:21:57 +0530 Subject: [PATCH 2/5] test concurrency control From 4c07c4170fe230ca4dde2ebba9f8fa75a32cff35 Mon Sep 17 00:00:00 2001 From: Shravan Vasista Date: Tue, 5 Aug 2025 09:37:29 +0530 Subject: [PATCH 3/5] add concurrency control to all workflows --- .github/workflows/build.yaml | 4 ++-- .github/workflows/cargo-audit.yaml | 5 +++++ .github/workflows/code-formatting-check.yaml | 5 +++++ .github/workflows/codeql.yml | 4 ++++ .github/workflows/docs.yaml | 7 ++++++- .github/workflows/github-dependency-review.yaml | 5 +++++ .github/workflows/lint.yaml | 7 ++++++- .github/workflows/local-development-makefile.yaml | 7 ++++++- 8 files changed, 39 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 56ddbf1b1..c2ab4abd3 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -1,3 +1,5 @@ +name: Build + on: push: pull_request: @@ -5,8 +7,6 @@ on: schedule: # Trigger a job on default branch at 4AM PST everyday - cron: "0 11 * * *" -name: Build - concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true diff --git a/.github/workflows/cargo-audit.yaml b/.github/workflows/cargo-audit.yaml index 2f94c51a1..5e6f71253 100644 --- a/.github/workflows/cargo-audit.yaml +++ b/.github/workflows/cargo-audit.yaml @@ -1,4 +1,5 @@ name: Cargo Audit + on: push: paths: @@ -9,6 +10,10 @@ on: schedule: # Trigger a job on default branch at 4AM PST everyday - cron: 0 11 * * * +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: cargo_audit: name: Cargo Audit diff --git a/.github/workflows/code-formatting-check.yaml b/.github/workflows/code-formatting-check.yaml index 31bc226ff..3a9b25912 100644 --- a/.github/workflows/code-formatting-check.yaml +++ b/.github/workflows/code-formatting-check.yaml @@ -1,4 +1,5 @@ name: Code Formatting Check + on: push: pull_request: @@ -6,6 +7,10 @@ on: schedule: # Trigger a job on default branch at 4AM PST everyday - cron: 0 11 * * * +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: cargo-fmt: name: .rs Formatting Check diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index fa130f68f..d1d7ca9b7 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -7,6 +7,10 @@ on: schedule: # Trigger a job on default branch at 4AM PST everyday - cron: 0 11 * * * +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: analyze: name: Analyze diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index f24123a50..a9869f5cc 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -1,3 +1,5 @@ +name: Docs + on: push: pull_request: @@ -5,7 +7,9 @@ on: schedule: # Trigger a job on default branch at 4AM PST everyday - cron: "0 11 * * *" -name: Docs +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true env: RUSTDOCFLAGS: -D warnings @@ -15,6 +19,7 @@ jobs: name: Docs runs-on: windows-latest strategy: + fail-fast: false # Allow all matrix variants to complete even if some fail matrix: wdk: - Microsoft.WindowsWDK.10.0.22621 # NI WDK diff --git a/.github/workflows/github-dependency-review.yaml b/.github/workflows/github-dependency-review.yaml index 51590aa9b..39274af5d 100644 --- a/.github/workflows/github-dependency-review.yaml +++ b/.github/workflows/github-dependency-review.yaml @@ -1,9 +1,14 @@ name: Dependency Review + on: push: pull_request: merge_group: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + jobs: dependency-review: name: Github Dependency Review diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index c5ca03d7c..c6c35def1 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -1,3 +1,5 @@ +name: Lint + on: push: pull_request: @@ -5,7 +7,9 @@ on: schedule: # Trigger a job on default branch at 4AM PST everyday - cron: "0 11 * * *" -name: Lint +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true env: RUSTFLAGS: >- @@ -18,6 +22,7 @@ jobs: permissions: checks: write strategy: + fail-fast: false # Allow all matrix variants to complete even if some fail matrix: wdk: - Microsoft.WindowsWDK.10.0.22621 # NI WDK diff --git a/.github/workflows/local-development-makefile.yaml b/.github/workflows/local-development-makefile.yaml index 79cf5bad8..c05eadb35 100644 --- a/.github/workflows/local-development-makefile.yaml +++ b/.github/workflows/local-development-makefile.yaml @@ -1,3 +1,5 @@ +name: Local Development Makefile + on: push: pull_request: @@ -5,7 +7,9 @@ on: schedule: # Trigger a job on default branch at 4AM PST everyday - cron: "0 11 * * *" -name: Local Development Makefile +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true env: RUSTFLAGS: -D warnings @@ -15,6 +19,7 @@ jobs: name: Test WDR's local cargo-make Makefile runs-on: windows-latest strategy: + fail-fast: false # Allow all matrix variants to complete even if some fail matrix: wdk: - Microsoft.WindowsWDK.10.0.22621 # NI WDK From e1cc56a186cc2bf8449df9a1278662df84494c9b Mon Sep 17 00:00:00 2001 From: Shravan Vasista Date: Tue, 5 Aug 2025 10:03:12 +0530 Subject: [PATCH 4/5] test concurrency control From 54b0868791ce9b961159bf6a13763907cd8fbc8a Mon Sep 17 00:00:00 2001 From: Shravan Vasista Date: Wed, 6 Aug 2025 15:49:55 +0530 Subject: [PATCH 5/5] add condition to prevent cancel-in-progress on the `main` branch --- .github/workflows/build.yaml | 2 +- .github/workflows/cargo-audit.yaml | 2 +- .github/workflows/code-formatting-check.yaml | 2 +- .github/workflows/codeql.yaml | 2 +- .github/workflows/docs.yaml | 2 +- .github/workflows/github-dependency-review.yaml | 2 +- .github/workflows/lint.yaml | 2 +- .github/workflows/local-development-makefile.yaml | 2 +- .github/workflows/test.yaml | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index feacbfd8c..a47a0c9c8 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -9,7 +9,7 @@ on: concurrency: group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} env: RUSTFLAGS: >- diff --git a/.github/workflows/cargo-audit.yaml b/.github/workflows/cargo-audit.yaml index 5e6f71253..b697ee0b5 100644 --- a/.github/workflows/cargo-audit.yaml +++ b/.github/workflows/cargo-audit.yaml @@ -12,7 +12,7 @@ on: concurrency: group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} jobs: cargo_audit: diff --git a/.github/workflows/code-formatting-check.yaml b/.github/workflows/code-formatting-check.yaml index 3a9b25912..b1d73fde9 100644 --- a/.github/workflows/code-formatting-check.yaml +++ b/.github/workflows/code-formatting-check.yaml @@ -9,7 +9,7 @@ on: concurrency: group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} jobs: cargo-fmt: diff --git a/.github/workflows/codeql.yaml b/.github/workflows/codeql.yaml index 22c64bfb2..5eec40bc2 100644 --- a/.github/workflows/codeql.yaml +++ b/.github/workflows/codeql.yaml @@ -9,7 +9,7 @@ on: concurrency: group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} jobs: analyze: diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 043ab43cc..91f019ab8 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -9,7 +9,7 @@ on: concurrency: group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} env: RUSTDOCFLAGS: -D warnings diff --git a/.github/workflows/github-dependency-review.yaml b/.github/workflows/github-dependency-review.yaml index 39274af5d..f24f6f146 100644 --- a/.github/workflows/github-dependency-review.yaml +++ b/.github/workflows/github-dependency-review.yaml @@ -7,7 +7,7 @@ on: concurrency: group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} jobs: dependency-review: diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml index 68c1afe9a..3ce57ff6d 100644 --- a/.github/workflows/lint.yaml +++ b/.github/workflows/lint.yaml @@ -9,7 +9,7 @@ on: concurrency: group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} env: RUSTFLAGS: >- diff --git a/.github/workflows/local-development-makefile.yaml b/.github/workflows/local-development-makefile.yaml index f94e75d79..ae05ee366 100644 --- a/.github/workflows/local-development-makefile.yaml +++ b/.github/workflows/local-development-makefile.yaml @@ -9,7 +9,7 @@ on: concurrency: group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} env: RUSTFLAGS: -D warnings diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 9729166ad..7638a3ba5 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -9,7 +9,7 @@ name: Test concurrency: group: ${{ github.workflow }}-${{ github.ref }} - cancel-in-progress: true + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} jobs: test: