fix(ci): disambiguate concurrency groups across sibling reusable-CI callers

The group key ci-${{ github.workflow }}-${{ github.ref }} resolves
identically for every job in a caller workflow (github.workflow is the
caller's name in a reusable workflow), so repos calling two reusable CI
workflows from one ci.yaml (e.g. exec-aide python + typescript) had
their jobs cancel each other on every run.

Prefix each group with the reusable workflow's own filename and append
its distinguishing input (source-dirs / working-directory) so sibling
jobs get distinct groups while superseded runs of the same job still
cancel.
This commit is contained in:
Adam Moussa 2026-06-05 12:30:34 -04:00
parent 1cc7236ef6
commit d1e7f2ce6f
3 changed files with 3 additions and 3 deletions

View file

@ -25,7 +25,7 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 20
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
group: ci-dotnet-${{ github.workflow }}-${{ github.ref }}-${{ inputs.working-directory }}
cancel-in-progress: true
defaults:
run:

View file

@ -49,7 +49,7 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 10
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
group: ci-python-sam-${{ github.workflow }}-${{ github.ref }}-${{ inputs.source-dirs }}
cancel-in-progress: true
steps:
- uses: actions/checkout@v6

View file

@ -61,7 +61,7 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 30
concurrency:
group: ci-${{ github.workflow }}-${{ github.ref }}
group: ci-typescript-cdk-${{ github.workflow }}-${{ github.ref }}-${{ inputs.working-directory }}
cancel-in-progress: true
steps:
- uses: actions/checkout@v6