From f11bc66c42fd30897594401462650a1ecd8abff1 Mon Sep 17 00:00:00 2001 From: Pedro Algarvio Date: Wed, 17 Jan 2024 20:20:15 +0000 Subject: [PATCH] Some steps need to be kept at `actions/upload-artifact@v3` This is because we upload multiple artifacts under the same name something that ``actions/upload-artifact@v4`` does not do. There are breaking changes with this new version. See https://github.blog/changelog/2023-12-14-github-actions-artifacts-v4-is-now-generally-available/ Signed-off-by: Pedro Algarvio --- .github/workflows/ci.yml | 4 +++- .github/workflows/nightly.yml | 4 +++- .github/workflows/scheduled.yml | 4 +++- .github/workflows/templates/ci.yml.jinja | 4 +++- .../test-package-downloads-action.yml.jinja | 12 +++++++--- .github/workflows/test-action-linux.yml | 22 ++++++++++++++----- .github/workflows/test-action-macos.yml | 20 ++++++++++++----- .github/workflows/test-action-windows.yml | 20 ++++++++++++----- .../test-package-downloads-action.yml | 12 +++++++--- .../workflows/test-packages-action-linux.yml | 8 +++++-- .../workflows/test-packages-action-macos.yml | 8 +++++-- .../test-packages-action-windows.yml | 8 +++++-- 12 files changed, 94 insertions(+), 32 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 89e65fa1bf11..c1dd2f7d7c38 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1943,7 +1943,9 @@ jobs: - name: Get coverage reports id: get-coverage-reports - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: all-testrun-coverage-artifacts path: artifacts/coverage/ diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 3de98066dd49..13f1ad225a84 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -2000,7 +2000,9 @@ jobs: - name: Get coverage reports id: get-coverage-reports - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: all-testrun-coverage-artifacts path: artifacts/coverage/ diff --git a/.github/workflows/scheduled.yml b/.github/workflows/scheduled.yml index d7d45d9e9057..e9cbcaafd2fe 100644 --- a/.github/workflows/scheduled.yml +++ b/.github/workflows/scheduled.yml @@ -1977,7 +1977,9 @@ jobs: - name: Get coverage reports id: get-coverage-reports - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: all-testrun-coverage-artifacts path: artifacts/coverage/ diff --git a/.github/workflows/templates/ci.yml.jinja b/.github/workflows/templates/ci.yml.jinja index 3f488554919f..0664b51cdc21 100644 --- a/.github/workflows/templates/ci.yml.jinja +++ b/.github/workflows/templates/ci.yml.jinja @@ -342,7 +342,9 @@ - name: Get coverage reports id: get-coverage-reports - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: all-testrun-coverage-artifacts path: artifacts/coverage/ diff --git a/.github/workflows/templates/test-package-downloads-action.yml.jinja b/.github/workflows/templates/test-package-downloads-action.yml.jinja index 9f89f7d5450e..8752263bbcb6 100644 --- a/.github/workflows/templates/test-package-downloads-action.yml.jinja +++ b/.github/workflows/templates/test-package-downloads-action.yml.jinja @@ -268,7 +268,9 @@ jobs: - name: Upload Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.arch }} path: | @@ -474,7 +476,9 @@ jobs: - name: Upload Test Run Artifacts if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.arch }} path: | @@ -691,7 +695,9 @@ jobs: - name: Upload Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.arch }} path: | diff --git a/.github/workflows/test-action-linux.yml b/.github/workflows/test-action-linux.yml index bfc15b09a71d..d7d1ae0b599e 100644 --- a/.github/workflows/test-action-linux.yml +++ b/.github/workflows/test-action-linux.yml @@ -149,7 +149,7 @@ jobs: tar xvf ${{ inputs.package-name }}-${{ inputs.salt-version }}-onedir-${{ inputs.platform }}-${{ inputs.arch }}.tar.xz - name: Download nox.linux.${{ inputs.arch }}.tar.* artifact for session ${{ inputs.nox-session }} - uses: actions/upload-artifact@v4 + uses: actions/download-artifact@v4 with: name: nox-linux-${{ inputs.arch }}-${{ inputs.nox-session }} @@ -274,7 +274,9 @@ jobs: - name: Upload Code Coverage Test Run Artifacts if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} path: | @@ -282,7 +284,9 @@ jobs: - name: Upload JUnit XML Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }} path: | @@ -290,7 +294,9 @@ jobs: - name: Upload Test Run Log Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }} path: | @@ -308,7 +314,9 @@ jobs: uses: actions/checkout@v4 - name: Download Code Coverage Test Run Artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. if: ${{ inputs.skip-code-coverage == false }} id: download-coverage-artifacts with: @@ -350,7 +358,9 @@ jobs: - name: Upload Code Coverage DB if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: all-testrun-coverage-artifacts path: artifacts/coverage diff --git a/.github/workflows/test-action-macos.yml b/.github/workflows/test-action-macos.yml index fe84e8358288..d9edaff242e5 100644 --- a/.github/workflows/test-action-macos.yml +++ b/.github/workflows/test-action-macos.yml @@ -303,7 +303,9 @@ jobs: - name: Upload Code Coverage Test Run Artifacts if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} path: | @@ -311,7 +313,9 @@ jobs: - name: Upload JUnit XML Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }} path: | @@ -319,7 +323,9 @@ jobs: - name: Upload Test Run Log Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }} path: | @@ -337,7 +343,9 @@ jobs: uses: actions/checkout@v4 - name: Download Code Coverage Test Run Artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. if: ${{ inputs.skip-code-coverage == false }} id: download-coverage-artifacts with: @@ -384,7 +392,9 @@ jobs: - name: Upload Code Coverage DB if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: all-testrun-coverage-artifacts path: artifacts/coverage diff --git a/.github/workflows/test-action-windows.yml b/.github/workflows/test-action-windows.yml index ada4f2840300..50cdcd4c8b48 100644 --- a/.github/workflows/test-action-windows.yml +++ b/.github/workflows/test-action-windows.yml @@ -274,7 +274,9 @@ jobs: - name: Upload Code Coverage Test Run Artifacts if: always() && inputs.skip-code-coverage == false && steps.download-artifacts-from-vm.outcome == 'success' && job.status != 'cancelled' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: testrun-coverage-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }} path: | @@ -282,7 +284,9 @@ jobs: - name: Upload JUnit XML Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: testrun-junit-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }} path: | @@ -290,7 +294,9 @@ jobs: - name: Upload Test Run Log Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: testrun-log-artifacts-${{ inputs.distro-slug }}-${{ inputs.nox-session }}-${{ matrix.transport }} path: | @@ -309,7 +315,9 @@ jobs: uses: actions/checkout@v4 - name: Download Code Coverage Test Run Artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. if: ${{ inputs.skip-code-coverage == false }} id: download-coverage-artifacts with: @@ -351,7 +359,9 @@ jobs: - name: Upload Code Coverage DB if: always() && inputs.skip-code-coverage == false && steps.download-coverage-artifacts.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: all-testrun-coverage-artifacts path: artifacts/coverage diff --git a/.github/workflows/test-package-downloads-action.yml b/.github/workflows/test-package-downloads-action.yml index 16a588a78512..f746834120ad 100644 --- a/.github/workflows/test-package-downloads-action.yml +++ b/.github/workflows/test-package-downloads-action.yml @@ -413,7 +413,9 @@ jobs: - name: Upload Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.arch }} path: | @@ -626,7 +628,9 @@ jobs: - name: Upload Test Run Artifacts if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.arch }} path: | @@ -847,7 +851,9 @@ jobs: - name: Upload Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ matrix.distro-slug }}-${{ matrix.arch }} path: | diff --git a/.github/workflows/test-packages-action-linux.yml b/.github/workflows/test-packages-action-linux.yml index b2c2c37b9a4a..355d9967b191 100644 --- a/.github/workflows/test-packages-action-linux.yml +++ b/.github/workflows/test-packages-action-linux.yml @@ -218,7 +218,9 @@ jobs: - name: Upload Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ matrix.tests-chunk }} path: | @@ -245,7 +247,9 @@ jobs: - name: Download Test Run Artifacts id: download-test-run-artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ matrix.tests-chunk }} path: artifacts diff --git a/.github/workflows/test-packages-action-macos.yml b/.github/workflows/test-packages-action-macos.yml index 0b611dffd14f..5d5b58dfc6e1 100644 --- a/.github/workflows/test-packages-action-macos.yml +++ b/.github/workflows/test-packages-action-macos.yml @@ -202,7 +202,9 @@ jobs: - name: Upload Test Run Artifacts if: always() - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ matrix.tests-chunk }} path: | @@ -229,7 +231,9 @@ jobs: - name: Download Test Run Artifacts id: download-test-run-artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ matrix.tests-chunk }} path: artifacts diff --git a/.github/workflows/test-packages-action-windows.yml b/.github/workflows/test-packages-action-windows.yml index 3892ccce35b0..d0619857e05e 100644 --- a/.github/workflows/test-packages-action-windows.yml +++ b/.github/workflows/test-packages-action-windows.yml @@ -218,7 +218,9 @@ jobs: - name: Upload Test Run Artifacts if: always() && steps.download-artifacts-from-vm.outcome == 'success' - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v3 + # This needs to be actions/upload-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ matrix.tests-chunk }} path: | @@ -245,7 +247,9 @@ jobs: - name: Download Test Run Artifacts id: download-test-run-artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v3 + # This needs to be actions/download-artifact@v3 because we upload multiple artifacts + # under the same name something that actions/upload-artifact@v4 does not do. with: name: pkg-testrun-artifacts-${{ inputs.distro-slug }}-${{ matrix.tests-chunk }} path: artifacts