You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用GitHub API下载Artifact时提示过期,未达请求限制

解决GitHub Artifact下载的「Artifact has expired」和「Permission Denied」问题

一、处理「Artifact has expired」(HTTP 410错误)

原因

GitHub Artifact有严格的有效期限制:

  • 免费版仓库:默认90天
  • 付费版仓库:默认40天(可延长至最多1095天)
    Artifact过期后会被永久删除,调用API时直接返回HTTP 410错误,无法获取有效下载链接。

解决办法

  1. 确认Artifact状态
    进入仓库的「Actions」→「Artifacts」页面,查看目标Artifact是否标红显示「Expired」,确认是否真的过期。

  2. 重新生成Artifact
    若Artifact已过期,只能重新触发对应的Workflow,生成新的Artifact。

  3. 延长后续Artifact的有效期
    使用actions/upload-artifact上传Artifact时,通过retention-days参数自定义有效期(不可超过仓库类型允许的最大值):

    - name: 上传Artifact
      uses: actions/upload-artifact@v4
      with:
        name: my-artifact
        path: ./target/artifact.zip
        retention-days: 90  # 免费仓库最高90天,付费仓库最高1095天
    
  4. 优化curl命令避免无效赋值
    原命令会把API的错误信息赋值给ALLMODS_URL,导致后续curl执行失败。添加-f参数让curl在非成功状态码时退出,再判断URL有效性:

    ALLMODS_URL=$(curl -f -H "Accept: application/vnd.github+json" -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" -L "https://api.github.com/repos/OWNER/REPO/actions/artifacts/124384712/zip")
    if [ -n "$ALLMODS_URL" ]; then
      curl -O "$ALLMODS_URL"
    fi
    

二、处理「Permission Denied」问题

解决办法

  1. 检查GITHUB_TOKEN权限
    默认的GITHUB_TOKEN需要actions: read权限才能下载Artifact,在Workflow开头添加权限声明:

    permissions:
      actions: read
    

    跨仓库下载时,默认GITHUB_TOKEN无权限,需使用个人访问令牌(PAT),并确保PAT勾选actions:read和repo(私有仓库)权限,将PAT存入仓库Secrets后替换secrets.GITHUB_TOKEN。

  2. 确认Artifact与仓库权限匹配

    • 若Artifact属于私有仓库,确保当前Workflow所在仓库有权限访问该私有仓库(跨仓库场景需在源仓库设置仓库访问权限)。
    • 检查下载action的参数正确性,name必须与上传时的Artifact名称完全一致:
      - name: 下载Artifact
        uses: actions/download-artifact@v4
        with:
          name: my-artifact  # 与上传时的name严格一致
          path: ./downloads
      
  3. 修复路径权限问题
    若下载到指定路径时提示权限拒绝,提前创建路径并设置合理权限:

    mkdir -p ./downloads
    chmod 755 ./downloads
    

内容的提问来源于stack exchange,提问作者rafal1137

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 07:15:41