usethis包生成的GitHub Action报错:找不到action.yml等配置文件
问题原因
报错是因为旧版本usethis生成的工作流调用了已废弃的r-lib/actions@v1版本,该版本仓库结构已调整,无法找到check-r-package对应的配置文件。
可行解决步骤
- 把工作流中所有
r-lib/actions/*@v1的引用全部替换为r-lib/actions/*@v2,同时升级其他官方Action到兼容版本,修改后的核心steps代码如下:steps: - uses: actions/checkout@v4 - uses: r-lib/actions/setup-pandoc@v2 - uses: r-lib/actions/setup-r@v2 with: r-version: ${{ matrix.config.r }} http-user-agent: ${{ matrix.config.http-user-agent }} use-public-rspm: true - uses: r-lib/actions/setup-r-dependencies@v2 with: extra-packages: any::rcmdcheck - uses: r-lib/actions/check-r-package@v2 - name: Show testthat output if: always() run: find check -name 'testthat.Rout*' -exec cat '{}' \; || true shell: bash - name: Upload check results if: failure() uses: actions/upload-artifact@v4 with: name: ${{ runner.os }}-r${{ matrix.config.r }}-results path: check - 将本地
usethis包更新到最新版,后续生成的工作流会默认使用v2版本的r-lib/actions配置,避免再次出现同类问题,更新命令:install.packages("usethis") - 提交修改后的工作流文件到GitHub仓库,重新触发CI运行即可。
内容的提问来源于stack exchange,提问作者Derek Corcoran
相关产品推荐
相关产品推荐

