diff --git a/.github/workflows/auto-release.yml b/.github/workflows/auto-release.yml index 002b6c58..c76698ce 100644 --- a/.github/workflows/auto-release.yml +++ b/.github/workflows/auto-release.yml @@ -6,6 +6,11 @@ on: - main workflow_dispatch: +# Never cancelled and never coalesced: every publish runs to completion. +concurrency: + group: ${{ github.workflow }}-${{ github.run_id }} + cancel-in-progress: false + permissions: contents: write pull-requests: write diff --git a/.github/workflows/linux-arm-build.yml b/.github/workflows/linux-arm-build.yml index c6673d4f..06e1e9bc 100644 --- a/.github/workflows/linux-arm-build.yml +++ b/.github/workflows/linux-arm-build.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_build.yml diff --git a/.github/workflows/linux-arm-integration-test.yml b/.github/workflows/linux-arm-integration-test.yml index 8f717a80..eaaff8ce 100644 --- a/.github/workflows/linux-arm-integration-test.yml +++ b/.github/workflows/linux-arm-integration-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_integration-test.yml diff --git a/.github/workflows/linux-arm-lint.yml b/.github/workflows/linux-arm-lint.yml index 5bc99e0e..8c348771 100644 --- a/.github/workflows/linux-arm-lint.yml +++ b/.github/workflows/linux-arm-lint.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_lint.yml diff --git a/.github/workflows/linux-arm-unit-test.yml b/.github/workflows/linux-arm-unit-test.yml index 9726a203..1bb26317 100644 --- a/.github/workflows/linux-arm-unit-test.yml +++ b/.github/workflows/linux-arm-unit-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_unit-test.yml diff --git a/.github/workflows/linux-x86-build.yml b/.github/workflows/linux-x86-build.yml index 8815946a..6bc74dc4 100644 --- a/.github/workflows/linux-x86-build.yml +++ b/.github/workflows/linux-x86-build.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_build.yml diff --git a/.github/workflows/linux-x86-dwarf-smoke.yml b/.github/workflows/linux-x86-dwarf-smoke.yml index 3981be3c..2072d82a 100644 --- a/.github/workflows/linux-x86-dwarf-smoke.yml +++ b/.github/workflows/linux-x86-dwarf-smoke.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: dwarf-smoke: runs-on: ubuntu-24.04 diff --git a/.github/workflows/linux-x86-integration-test.yml b/.github/workflows/linux-x86-integration-test.yml index ac41a4d5..1bfc9e02 100644 --- a/.github/workflows/linux-x86-integration-test.yml +++ b/.github/workflows/linux-x86-integration-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_integration-test.yml diff --git a/.github/workflows/linux-x86-lint.yml b/.github/workflows/linux-x86-lint.yml index 1ad2b572..58bc853e 100644 --- a/.github/workflows/linux-x86-lint.yml +++ b/.github/workflows/linux-x86-lint.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_lint.yml diff --git a/.github/workflows/linux-x86-unit-test.yml b/.github/workflows/linux-x86-unit-test.yml index 312e3780..f1473d11 100644 --- a/.github/workflows/linux-x86-unit-test.yml +++ b/.github/workflows/linux-x86-unit-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_unit-test.yml diff --git a/.github/workflows/macos-arm-build.yml b/.github/workflows/macos-arm-build.yml index 5ee2baf7..3073b887 100644 --- a/.github/workflows/macos-arm-build.yml +++ b/.github/workflows/macos-arm-build.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_build.yml diff --git a/.github/workflows/macos-arm-integration-test.yml b/.github/workflows/macos-arm-integration-test.yml index 02e502c4..d32d9f0c 100644 --- a/.github/workflows/macos-arm-integration-test.yml +++ b/.github/workflows/macos-arm-integration-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_integration-test.yml diff --git a/.github/workflows/macos-arm-lint.yml b/.github/workflows/macos-arm-lint.yml index 3cd87cab..df737e7f 100644 --- a/.github/workflows/macos-arm-lint.yml +++ b/.github/workflows/macos-arm-lint.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_lint.yml diff --git a/.github/workflows/macos-arm-unit-test.yml b/.github/workflows/macos-arm-unit-test.yml index 20d850a8..34fa348c 100644 --- a/.github/workflows/macos-arm-unit-test.yml +++ b/.github/workflows/macos-arm-unit-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_unit-test.yml diff --git a/.github/workflows/macos-x86-build.yml b/.github/workflows/macos-x86-build.yml index ef5fc5fb..69a7448d 100644 --- a/.github/workflows/macos-x86-build.yml +++ b/.github/workflows/macos-x86-build.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_build.yml diff --git a/.github/workflows/macos-x86-integration-test.yml b/.github/workflows/macos-x86-integration-test.yml index b987d934..0eb88dc6 100644 --- a/.github/workflows/macos-x86-integration-test.yml +++ b/.github/workflows/macos-x86-integration-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_integration-test.yml diff --git a/.github/workflows/macos-x86-lint.yml b/.github/workflows/macos-x86-lint.yml index dc4a0092..7a23585a 100644 --- a/.github/workflows/macos-x86-lint.yml +++ b/.github/workflows/macos-x86-lint.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_lint.yml diff --git a/.github/workflows/macos-x86-unit-test.yml b/.github/workflows/macos-x86-unit-test.yml index 2222ad80..548cc0b8 100644 --- a/.github/workflows/macos-x86-unit-test.yml +++ b/.github/workflows/macos-x86-unit-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_unit-test.yml diff --git a/.github/workflows/vscode-extension-release.yml b/.github/workflows/vscode-extension-release.yml index 4915a386..955382ba 100644 --- a/.github/workflows/vscode-extension-release.yml +++ b/.github/workflows/vscode-extension-release.yml @@ -4,6 +4,11 @@ on: push: tags: ["vscode-v*"] +# Never cancelled and never coalesced: every publish runs to completion. +concurrency: + group: ${{ github.workflow }}-${{ github.run_id }} + cancel-in-progress: false + jobs: validate-tag: runs-on: ubuntu-24.04 diff --git a/.github/workflows/windows-arm-build.yml b/.github/workflows/windows-arm-build.yml index 8aef00ae..074ab699 100644 --- a/.github/workflows/windows-arm-build.yml +++ b/.github/workflows/windows-arm-build.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_build.yml diff --git a/.github/workflows/windows-x86-build.yml b/.github/workflows/windows-x86-build.yml index f383e916..63dd17c6 100644 --- a/.github/workflows/windows-x86-build.yml +++ b/.github/workflows/windows-x86-build.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_build.yml diff --git a/.github/workflows/windows-x86-integration-test.yml b/.github/workflows/windows-x86-integration-test.yml index 7e95c661..d7f548bb 100644 --- a/.github/workflows/windows-x86-integration-test.yml +++ b/.github/workflows/windows-x86-integration-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_integration-test.yml diff --git a/.github/workflows/windows-x86-lint.yml b/.github/workflows/windows-x86-lint.yml index 3ca370b9..9f022734 100644 --- a/.github/workflows/windows-x86-lint.yml +++ b/.github/workflows/windows-x86-lint.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_lint.yml diff --git a/.github/workflows/windows-x86-unit-test.yml b/.github/workflows/windows-x86-unit-test.yml index 62b35426..a11640f4 100644 --- a/.github/workflows/windows-x86-unit-test.yml +++ b/.github/workflows/windows-x86-unit-test.yml @@ -6,6 +6,13 @@ on: pull_request: workflow_dispatch: +# One live run per workflow per ref: a new push to a branch or PR cancels the +# superseded run instead of queuing behind it in the shared account-wide runner +# pool. Runs on main get a unique group, so they are never cancelled or coalesced. +concurrency: + group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + jobs: call: uses: ./.github/workflows/_unit-test.yml