From 9af12cd3e2a2f9ef3c760ec345b2dde9172405fb Mon Sep 17 00:00:00 2001 From: Benjamin Gilbert Date: Fri, 15 Dec 2023 05:06:20 -0600 Subject: [PATCH 1/2] workflows: fix missing name for job step Signed-off-by: Benjamin Gilbert --- .github/workflows/dco-check.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/dco-check.yml b/.github/workflows/dco-check.yml index dd29f5c..1ce365e 100644 --- a/.github/workflows/dco-check.yml +++ b/.github/workflows/dco-check.yml @@ -38,7 +38,8 @@ jobs: echo ${{ github.event.pull_request.head.sha }} > result/head dco-check -v touch result/success - - uses: actions/upload-artifact@v3 + - name: Upload result + uses: actions/upload-artifact@v3 if: always() with: name: result From 0795cc955aef90a3d483a7de3dba87bdd1f40943 Mon Sep 17 00:00:00 2001 From: Benjamin Gilbert Date: Fri, 15 Dec 2023 05:04:07 -0600 Subject: [PATCH 2/2] workflows: switch to v4 artifact handling upload-artifact v4 uses a new backend storage implementation. download-artifact v4 supports downloading artifacts from a different workflow run, so we can use it to replace the open-coded github-script invocation. Signed-off-by: Benjamin Gilbert --- .github/workflows/dco-check.yml | 2 +- .github/workflows/dco-report.yml | 24 +++++------------------- 2 files changed, 6 insertions(+), 20 deletions(-) diff --git a/.github/workflows/dco-check.yml b/.github/workflows/dco-check.yml index 1ce365e..8a18cec 100644 --- a/.github/workflows/dco-check.yml +++ b/.github/workflows/dco-check.yml @@ -39,7 +39,7 @@ jobs: dco-check -v touch result/success - name: Upload result - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: always() with: name: result diff --git a/.github/workflows/dco-report.yml b/.github/workflows/dco-report.yml index 6920617..77040b4 100644 --- a/.github/workflows/dco-report.yml +++ b/.github/workflows/dco-report.yml @@ -34,30 +34,16 @@ jobs: if: ${{ github.event.workflow_run.event == 'pull_request' }} steps: - name: Download state - uses: actions/github-script@v7 + uses: actions/download-artifact@v4 with: - script: | - var artifacts = await github.rest.actions.listWorkflowRunArtifacts({ - owner: context.repo.owner, - repo: context.repo.repo, - run_id: ${{ github.event.workflow_run.id }}, - }); - var matchArtifact = artifacts.data.artifacts.filter((artifact) => { - return artifact.name == "result" - })[0]; - var download = await github.rest.actions.downloadArtifact({ - owner: context.repo.owner, - repo: context.repo.repo, - artifact_id: matchArtifact.id, - archive_format: 'zip', - }); - var fs = require('fs'); - fs.writeFileSync('${{ github.workspace }}/result.zip', Buffer.from(download.data)); + name: result + path: result + github-token: ${{ secrets.GITHUB_TOKEN }} + run-id: ${{ github.event.workflow_run.id }} - name: Read state id: result run: | - unzip -d result result.zip echo "pr=$(cat result/pr)" >> $GITHUB_OUTPUT echo "base=$(cat result/base)" >> $GITHUB_OUTPUT echo "head=$(cat result/head)" >> $GITHUB_OUTPUT