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

Github Actions自动发布失败:无法找到指定工件文件

错误原因分析及解决办法

错误核心原因

你遇到的/home/runner/work/pcsx2/pcsx2/ci-artifacts/* doesn't match any files错误,主要来自两个场景:

1. Artifact下载后的目录结构不符合预期

actions/download-artifact@v3下载多个artifact时,会在指定的path下为每个artifact创建独立子文件夹。比如你上传的artifact叫windows-build,文件会存放在ci-artifacts/windows-build/下,而非ci-artifacts/根目录。此时ci-artifacts/*只会匹配这些子文件夹,无法匹配文件夹内的实际文件,导致发布工具找不到可上传内容。

2. 前置upload_artifacts Job未成功上传文件

如果上游的upload_artifacts Job没有生成或上传任何artifact,ci-artifacts目录会是空的,自然找不到匹配文件。


解决步骤

步骤1:验证Artifact的存在与结构

在Download all Artifacts步骤后添加调试命令,查看实际下载的文件结构:

- name: Debug - Check Artifact Structure
  run: ls -R ${{ github.WORKSPACE }}/ci-artifacts

运行Workflow后查看该步骤输出,确认文件是否存在及具体存放路径。

步骤2:调整发布的文件匹配路径

根据调试结果,修改marvinpinto/action-automatic-releases的files参数:

  • 匹配所有子文件夹下的所有文件(递归匹配):
    files: |
      ${{ github.WORKSPACE }}/ci-artifacts/**/*
    
  • 精准匹配指定artifact下的文件(比如artifact叫linux-build):
    files: |
      ${{ github.WORKSPACE }}/ci-artifacts/linux-build/*
    

步骤3:检查上游upload_artifacts Job配置

确认upload_artifacts Job中actions/upload-artifact@v3的path参数是否正确指向生成的文件,且文件确实存在。示例正确配置:

- uses: actions/upload-artifact@v3
  with:
    name: linux-build
    path: ./build/linux/**/*  # 确保该路径下有实际生成的文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 00:05:10