3636 - labeled
3737 - unlabeled
3838
39- jobs :
40- Process-PSModule-Production :
41- if : ${{ github.event_name != 'pull_request' }}
42- concurrency :
43- group : ${{ github.workflow }}-${{ github.ref }}
44- queue : max
45- permissions :
46- contents : read
47- pages : write
48- id-token : write
49- uses : PSModule/Process-PSModule/.github/workflows/workflow.yml@v8
50- secrets :
51- PSGALLERY_API_KEY : ${{ secrets.PSGALLERY_API_KEY }}
52- GitHubAppClientId : ${{ secrets.SHELLY_CLIENT_ID }}
53- GitHubAppPrivateKey : ${{ secrets.SHELLY_PRIVATE_KEY }}
39+ concurrency :
40+ group : ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
41+ queue : ${{ github.event_name == 'pull_request' && 'single' || 'max' }}
42+ cancel-in-progress : ${{ github.event_name == 'pull_request' }}
5443
55- Process-PSModule-PullRequest :
56- if : ${{ github.event_name == 'pull_request' }}
57- concurrency :
58- group : ${{ github.workflow }}-${{ github.event.pull_request.number }}
59- queue : single
60- cancel-in-progress : true
44+ jobs :
45+ Process-PSModule :
6146 permissions :
6247 contents : read
6348 pages : write
@@ -75,11 +60,10 @@ Stable releases are evaluated from a push to the default branch. A merged pull r
7560release notes; a direct default-branch push or a manual dispatch uses the default ` Patch` bump and commit-based notes.
7661Keep the `pull_request` trigger for CI, prereleases, and prerelease cleanup.
7762
78- The production job serializes default-branch pushes, manual releases, and scheduled work in the maximum native queue.
79- The pull-request job uses a separate group for each pull request, so a close event interrupts only its own activity and
80- does not block the resulting stable release. Its `single` queue and cancellation replace obsolete activity. GitHub
81- requires a literal queue value and rejects cancellation with `queue : max`, so these policies must remain separate.
82- The reusable workflow uses a distinct prefixed concurrency group. Do not give either caller job that group name.
63+ The concurrency group uses the pull-request number when available and the Git ref otherwise, so a close event
64+ interrupts only its own pull-request activity and does not block the resulting stable release. Pull-request events use
65+ the `single` queue and cancel obsolete activity; other events use the maximum native queue without cancellation. The
66+ reusable workflow uses a distinct prefixed concurrency group. Do not give the caller that group name.
8367
8468# # Passing test data
8569
@@ -101,9 +85,9 @@ The reusable workflow accepts test data through `TestData` and no longer declare
10185- ` TEST_USER_USER_FG_PAT`
10286- ` TEST_USER_PAT`
10387
104- If a caller passed any of these secrets directly, place them in the `secrets` map inside `TestData`. Add the same
105- ` TestData` mapping to the `secrets` block of both caller jobs . The environment variable names used by the tests can
106- stay the same; only the workflow-call interface changes :
88+ If a caller passed any of these secrets directly, place them in the `secrets` map inside `TestData`. Add the
89+ ` TestData` mapping to the calling job's `secrets` block. The environment variable names used by the tests can stay the
90+ same; only the workflow-call interface changes :
10791
10892` ` ` yaml
10993TestData: >-
@@ -122,8 +106,8 @@ workflow. It is one JSON object with two maps, so everything the tests need is v
122106` ` `
123107
124108Values under `secrets` are masked in the logs; values under `variables` are not. Build it in the calling workflow and
125- pass it through the `secrets:` blocks of both caller jobs so the whole blob is masked. Reference each secret directly
126- as `"${{ secrets.<name> }}"` and each variable as `${{ toJSON(vars.<name>) }}`. A folded `>-` scalar keeps the source
109+ pass it through the calling job's `secrets:` block so the whole blob is masked. Reference each secret directly as
110+ ` "${{ secrets.<name> }}"` and each variable as `${{ toJSON(vars.<name>) }}`. A folded `>-` scalar keeps the source
127111readable while producing a single-line value, as long as the JSON content lines stay at the same indentation level :
128112
129113` ` ` yaml
0 commit comments