Skip to content

Commit ad7e5be

Browse files
committed
Fix artifact downloads by adding cross-workflow run-id parameters
Problem: - Artifact downloads were failing with "no matches found" - downloads/v4 defaults to current workflow run - Artifacts exist in the 4 triggering workflows, not in release.yml Solution: - Extended check-all-workflows job to output run IDs for all 4 workflows - Added run-id and github-token parameters to all download-artifact steps - Each download now explicitly fetches from the correct workflow run Mapping: - wheels artifacts → wheels_run_id - wheels-docker artifacts → wheels_docker_run_id - wstest artifacts → wstest_run_id - main/flatbuffers artifacts → main_run_id This enables successful artifact collection from all 4 workflows.
1 parent d513348 commit ad7e5be

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

.github/workflows/release.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ jobs:
1515
runs-on: ubuntu-latest
1616
outputs:
1717
all_complete: ${{ steps.check.outputs.all_complete }}
18+
wheels_run_id: ${{ steps.check.outputs.wheels_run_id }}
19+
wheels_docker_run_id: ${{ steps.check.outputs.wheels_docker_run_id }}
20+
wstest_run_id: ${{ steps.check.outputs.wstest_run_id }}
21+
main_run_id: ${{ steps.check.outputs.main_run_id }}
1822

1923
steps:
2024
- name: Check all required workflows completed
@@ -72,6 +76,12 @@ jobs:
7276
7377
core.setOutput('all_complete', allComplete ? 'true' : 'false');
7478
79+
// Output run IDs for artifact downloads (using sanitized names)
80+
core.setOutput('wheels_run_id', latestRuns['wheels']?.id || '');
81+
core.setOutput('wheels_docker_run_id', latestRuns['wheels-docker']?.id || '');
82+
core.setOutput('wstest_run_id', latestRuns['wstest']?.id || '');
83+
core.setOutput('main_run_id', latestRuns['main']?.id || '');
84+
7585
identifiers:
7686
needs: check-all-workflows
7787
if: needs.check-all-workflows.outputs.all_complete == 'true'
@@ -112,20 +122,26 @@ jobs:
112122
pattern: wheels-*
113123
merge-multiple: true
114124
path: dist/
125+
run-id: ${{ needs.check-all-workflows.outputs.wheels_run_id }}
126+
github-token: ${{ secrets.GITHUB_TOKEN }}
115127
continue-on-error: true
116128

117129
- name: Download source distribution
118130
uses: actions/download-artifact@v4
119131
with:
120132
name: source-distribution
121133
path: dist/
134+
run-id: ${{ needs.check-all-workflows.outputs.wheels_run_id }}
135+
github-token: ${{ secrets.GITHUB_TOKEN }}
122136
continue-on-error: true
123137

124138
- name: Download Linux wheels without NVX
125139
uses: actions/download-artifact@v4
126140
with:
127141
name: linux-wheels-no-nvx
128142
path: dist/
143+
run-id: ${{ needs.check-all-workflows.outputs.wheels_run_id }}
144+
github-token: ${{ secrets.GITHUB_TOKEN }}
129145
continue-on-error: true
130146

131147
- name: Download manylinux wheel artifacts (from wheels-docker workflow)
@@ -134,6 +150,8 @@ jobs:
134150
pattern: artifacts-*
135151
merge-multiple: true
136152
path: wheelhouse/
153+
run-id: ${{ needs.check-all-workflows.outputs.wheels_docker_run_id }}
154+
github-token: ${{ secrets.GITHUB_TOKEN }}
137155
continue-on-error: true
138156

139157
- name: Download wstest conformance summary
@@ -142,6 +160,8 @@ jobs:
142160
pattern: conformance-summary-*
143161
merge-multiple: true
144162
path: wstest-results/
163+
run-id: ${{ needs.check-all-workflows.outputs.wstest_run_id }}
164+
github-token: ${{ secrets.GITHUB_TOKEN }}
145165
continue-on-error: true
146166

147167
- name: Download FlatBuffers schema artifacts
@@ -150,6 +170,8 @@ jobs:
150170
pattern: flatbuffers-schema-*
151171
merge-multiple: true
152172
path: flatbuffers-schema/
173+
run-id: ${{ needs.check-all-workflows.outputs.main_run_id }}
174+
github-token: ${{ secrets.GITHUB_TOKEN }}
153175
continue-on-error: true
154176

155177
- name: Consolidate all artifacts
@@ -286,27 +308,35 @@ jobs:
286308
with:
287309
name: wheels-macos-arm64
288310
path: dist/
311+
run-id: ${{ needs.check-all-workflows.outputs.wheels_run_id }}
312+
github-token: ${{ secrets.GITHUB_TOKEN }}
289313
continue-on-error: true
290314

291315
- name: Download Windows wheels
292316
uses: actions/download-artifact@v4
293317
with:
294318
name: wheels-windows-x86_64
295319
path: dist/
320+
run-id: ${{ needs.check-all-workflows.outputs.wheels_run_id }}
321+
github-token: ${{ secrets.GITHUB_TOKEN }}
296322
continue-on-error: true
297323

298324
- name: Download source distribution
299325
uses: actions/download-artifact@v4
300326
with:
301327
name: source-distribution
302328
path: dist/
329+
run-id: ${{ needs.check-all-workflows.outputs.wheels_run_id }}
330+
github-token: ${{ secrets.GITHUB_TOKEN }}
303331
continue-on-error: true
304332

305333
- name: Download Linux wheels without NVX
306334
uses: actions/download-artifact@v4
307335
with:
308336
name: linux-wheels-no-nvx
309337
path: dist/
338+
run-id: ${{ needs.check-all-workflows.outputs.wheels_run_id }}
339+
github-token: ${{ secrets.GITHUB_TOKEN }}
310340
continue-on-error: true
311341

312342
- name: Download manylinux wheels with NVX (from wheels-docker)
@@ -315,6 +345,8 @@ jobs:
315345
pattern: artifacts-*
316346
merge-multiple: true
317347
path: dist/
348+
run-id: ${{ needs.check-all-workflows.outputs.wheels_docker_run_id }}
349+
github-token: ${{ secrets.GITHUB_TOKEN }}
318350
continue-on-error: true
319351

320352
- name: List artifacts for PyPI publishing

0 commit comments

Comments
 (0)