Skip to content

Commit 55f723f

Browse files
committed
Pass artifact names via job outputs for verified downloads
The upload-artifact-verified action appends a meta-checksum suffix to artifact names (e.g., clients-all-quick-with-nvx-<sha256hash>). The download-artifact-verified action requires the exact name match. Changes: - Add job outputs to client-conformance, server-conformance, and consolidate-reports jobs to expose full artifact names - Add id: attributes to upload steps to capture action outputs - Update consolidate-reports and verify-reports download steps to use artifact names from upstream job outputs Note: This work was completed with AI assistance (Claude Code).
1 parent 1b35409 commit 55f723f

File tree

1 file changed

+32
-8
lines changed

1 file changed

+32
-8
lines changed

.github/workflows/wstest.yml

Lines changed: 32 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,11 @@ jobs:
3939
needs: identifiers
4040
runs-on: ubuntu-24.04
4141

42+
# Expose full artifact names (with meta-checksum suffix) for downstream jobs
43+
outputs:
44+
artifact_clients_with_nvx: ${{ steps.upload-clients-with-nvx.outputs.artifact-name }}
45+
artifact_clients_without_nvx: ${{ steps.upload-clients-without-nvx.outputs.artifact-name }}
46+
4247
env:
4348
BASE_REPO: ${{ needs.identifiers.outputs.base_repo }}
4449
BASE_BRANCH: ${{ needs.identifiers.outputs.base_branch }}
@@ -228,6 +233,7 @@ jobs:
228233
ls -la .wstest/clients-without-nvx/ 2>/dev/null | head -5 || echo "Directory not found"
229234
230235
- name: Upload client reports (with-nvx)
236+
id: upload-clients-with-nvx
231237
uses: wamp-proto/wamp-cicd/actions/upload-artifact-verified@main
232238
if: always()
233239
with:
@@ -236,6 +242,7 @@ jobs:
236242
retention-days: 30
237243

238244
- name: Upload client reports (without-nvx)
245+
id: upload-clients-without-nvx
239246
uses: wamp-proto/wamp-cicd/actions/upload-artifact-verified@main
240247
if: always()
241248
with:
@@ -249,6 +256,11 @@ jobs:
249256
needs: identifiers
250257
runs-on: ubuntu-24.04
251258

259+
# Expose full artifact names (with meta-checksum suffix) for downstream jobs
260+
outputs:
261+
artifact_servers_with_nvx: ${{ steps.upload-servers-with-nvx.outputs.artifact-name }}
262+
artifact_servers_without_nvx: ${{ steps.upload-servers-without-nvx.outputs.artifact-name }}
263+
252264
env:
253265
BASE_REPO: ${{ needs.identifiers.outputs.base_repo }}
254266
BASE_BRANCH: ${{ needs.identifiers.outputs.base_branch }}
@@ -464,6 +476,7 @@ jobs:
464476
ls -la .wstest/servers-without-nvx/ 2>/dev/null | head -5 || echo "Directory not found"
465477
466478
- name: Upload server reports (with-nvx)
479+
id: upload-servers-with-nvx
467480
uses: wamp-proto/wamp-cicd/actions/upload-artifact-verified@main
468481
if: always()
469482
with:
@@ -472,6 +485,7 @@ jobs:
472485
retention-days: 30
473486

474487
- name: Upload server reports (without-nvx)
488+
id: upload-servers-without-nvx
475489
uses: wamp-proto/wamp-cicd/actions/upload-artifact-verified@main
476490
if: always()
477491
with:
@@ -486,6 +500,12 @@ jobs:
486500
runs-on: ubuntu-24.04
487501
if: always()
488502

503+
# Expose full artifact names (with meta-checksum suffix) for downstream jobs
504+
outputs:
505+
artifact_docs_with_nvx: ${{ steps.upload-docs-with-nvx.outputs.artifact-name }}
506+
artifact_docs_without_nvx: ${{ steps.upload-docs-without-nvx.outputs.artifact-name }}
507+
artifact_summary: ${{ steps.upload-summary.outputs.artifact-name }}
508+
489509
env:
490510
BASE_REPO: ${{ needs.identifiers.outputs.base_repo }}
491511
BASE_BRANCH: ${{ needs.identifiers.outputs.base_branch }}
@@ -506,30 +526,30 @@ jobs:
506526
curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to ~/bin
507527
echo "$HOME/bin" >> $GITHUB_PATH
508528
509-
# Download all wstest artifacts explicitly (no pattern matching)
510-
# These artifact names match TEST_MODE=quick which is set at workflow level
529+
# Download all wstest artifacts explicitly using full artifact names from job outputs
530+
# The verified upload action appends a meta-checksum suffix to artifact names
511531
- name: Download client reports (with-nvx)
512532
uses: wamp-proto/wamp-cicd/actions/download-artifact-verified@main
513533
with:
514-
name: clients-all-${{ env.TEST_MODE }}-with-nvx
534+
name: ${{ needs.client-conformance.outputs.artifact_clients_with_nvx }}
515535
path: artifacts/clients-all-${{ env.TEST_MODE }}-with-nvx/
516536

517537
- name: Download client reports (without-nvx)
518538
uses: wamp-proto/wamp-cicd/actions/download-artifact-verified@main
519539
with:
520-
name: clients-all-${{ env.TEST_MODE }}-without-nvx
540+
name: ${{ needs.client-conformance.outputs.artifact_clients_without_nvx }}
521541
path: artifacts/clients-all-${{ env.TEST_MODE }}-without-nvx/
522542

523543
- name: Download server reports (with-nvx)
524544
uses: wamp-proto/wamp-cicd/actions/download-artifact-verified@main
525545
with:
526-
name: servers-all-${{ env.TEST_MODE }}-with-nvx
546+
name: ${{ needs.server-conformance.outputs.artifact_servers_with_nvx }}
527547
path: artifacts/servers-all-${{ env.TEST_MODE }}-with-nvx/
528548

529549
- name: Download server reports (without-nvx)
530550
uses: wamp-proto/wamp-cicd/actions/download-artifact-verified@main
531551
with:
532-
name: servers-all-${{ env.TEST_MODE }}-without-nvx
552+
name: ${{ needs.server-conformance.outputs.artifact_servers_without_nvx }}
533553
path: artifacts/servers-all-${{ env.TEST_MODE }}-without-nvx/
534554

535555
- name: Reconstruct test directory structure
@@ -639,20 +659,23 @@ jobs:
639659
echo "SUMMARY_FILE=$SUMMARY_FILE" >> $GITHUB_ENV
640660
641661
- name: Upload consolidated reports (with-nvx)
662+
id: upload-docs-with-nvx
642663
uses: wamp-proto/wamp-cicd/actions/upload-artifact-verified@main
643664
with:
644665
name: websocket-conformance-docs-${{ env.TEST_MODE }}-with-nvx
645666
path: docs/_static/websocket/conformance-with-nvx/
646667
retention-days: 30
647668

648669
- name: Upload consolidated reports (without-nvx)
670+
id: upload-docs-without-nvx
649671
uses: wamp-proto/wamp-cicd/actions/upload-artifact-verified@main
650672
with:
651673
name: websocket-conformance-docs-${{ env.TEST_MODE }}-without-nvx
652674
path: docs/_static/websocket/conformance-without-nvx/
653675
retention-days: 30
654676

655677
- name: Upload summary report for PR comment
678+
id: upload-summary
656679
uses: wamp-proto/wamp-cicd/actions/upload-artifact-verified@main
657680
with:
658681
name: conformance-summary-${{ env.TEST_MODE }}
@@ -697,16 +720,17 @@ jobs:
697720
with:
698721
submodules: recursive
699722

723+
# Download artifacts using full names from consolidate-reports job outputs
700724
- name: Download consolidated reports (with-nvx)
701725
uses: wamp-proto/wamp-cicd/actions/download-artifact-verified@main
702726
with:
703-
name: websocket-conformance-docs-${{ env.TEST_MODE }}-with-nvx
727+
name: ${{ needs.consolidate-reports.outputs.artifact_docs_with_nvx }}
704728
path: docs/_static/websocket/conformance-with-nvx/
705729

706730
- name: Download consolidated reports (without-nvx)
707731
uses: wamp-proto/wamp-cicd/actions/download-artifact-verified@main
708732
with:
709-
name: websocket-conformance-docs-${{ env.TEST_MODE }}-without-nvx
733+
name: ${{ needs.consolidate-reports.outputs.artifact_docs_without_nvx }}
710734
path: docs/_static/websocket/conformance-without-nvx/
711735

712736
- name: Verify 100% conformance (both NVX configurations)

0 commit comments

Comments
 (0)