deploy-pages icon indicating copy to clipboard operation
deploy-pages copied to clipboard

Allow deploy by artifact_id

Open RadxaYuntian opened this issue 1 year ago • 2 comments

Sometimes my workflow failed and I need to rerun it. I have both upload-pages-artifact and deploy-pages in the same job, and during the 2nd run deploy-pages will fail with:

Run actions/deploy-pages@v4
  with:
    token: ***
    timeout: 600000
    error_count: 10
    reporting_interval: 5000
    artifact_name: github-pages
    preview: false
  env:
    GITHUB_PAGES: true
Fetching artifact metadata for "github-pages" in this workflow run
Found 2 artifact(s)
Error: Fetching artifact metadata failed. Is githubstatus.com reporting issues with API requests, Pages, or Actions? Please re-run the deployment at a later time.
Error: Error: Multiple artifacts named "github-pages" were unexpectedly found for this workflow run. Artifact count is 2.
    at getArtifactMetadata (/home/runner/work/_actions/actions/deploy-pages/v4/src/internal/api-client.js:89:1)
    at processTicksAndRejections (node:internal/process/task_queues:95:5)
    at Deployment.create (/home/runner/work/_actions/actions/deploy-pages/v4/src/internal/deployment.js:66:1)
    at main (/home/runner/work/_actions/actions/deploy-pages/v4/src/index.js:30:1)
Error: Error: Multiple artifacts named "github-pages" were unexpectedly found for this workflow run. Artifact count is 2.

upload-pages-artifact already outputs artifact_id which should be unique between runs, and #251 seems already have the plumbing laid out. If we can pass this artifact_id to deploy-pages there will be no ambiguity for which artifact we want to upload.

RadxaYuntian avatar Apr 18 '24 04:04 RadxaYuntian

Hit this pretty regularly unfortunately. Workaround is to manually go in and delete artifacts from the previous builds before re-running jobs. Which is a bummer when I might want to come back and reference those again to learn more about the failures.

rajsite avatar Apr 04 '25 03:04 rajsite

I also want to catch an artefact uploaded by a different workflow via workflow_run using ${{ github.event.workflow_run.id }}, just like it is possible with actions/download-artifact@v5, but this action fails with "No artifacts named "github-pages" were found for this workflow run.".

Right now, we have to download+upload it again, which is awkward.

steps:
  - uses: actions/download-artifact@v5
    with:
      github-token: ${{ github.token }}
      name: github-pages
      path: docs
      run-id: ${{ github.event.workflow_run.id }}

  - uses: actions/upload-pages-artifact@v4
    with:
      path: docs

NatoBoram avatar Oct 27 '25 07:10 NatoBoram