【发布时间】:2021-01-13 03:30:45
【问题描述】:
我不确定如何最好地描述这一点,因此标题相当模糊。
我有一个R package,它使用 Github Actions 来运行检查。您可以在此处查看工作流文件:
https://github.com/Azure/Microsoft365R/blob/master/.github/workflows/check-standard.yaml
它与r-lib/actions repo 中的检查标准工作流程基本相同,只是针对我的特定要求进行了一些调整。我的latest commit 未能通过 MacOS 构建检查,出现以下错误:
Run remotes::install_deps(dependencies = TRUE)
Error: Error: HTTP error 404.
Not Found
Did you spell the repo owner (`hongooi73`) and repo name (`AzureGraph`) correctly?
- If spelling is correct, check that you have the required permissions to access the repo.
Execution halted
Error: Process completed with exit code 1.
有问题的步骤是这样的。它只是扫描包的DESCRIPTION file 并安装包的依赖项——所有这些都非常简单。
- name: Install dependencies
run: |
remotes::install_deps(dependencies = TRUE)
remotes::install_cran(c("pkgbuild", "rcmdcheck", "drat"))
shell: Rscript {0}
看起来它正在尝试从 hongooi73/AzureGraph 存储库安装一个依赖项,该存储库不再存在。但是我的DESCRIPTION file 没有将 hongooi73/AzureGraph 列为远程依赖项;它使用 Azure/AzureGraph,其中 hongooi73/AzureGraph 是一个分支。它使用指代 hongooi73/AzureGraph,但那是几次提交之前的事了。事实上,Linux 和 Windows 检查都运行没有问题,因此它们显然使用了正确的 repo 位置。
什么可能导致此故障?我该如何解决?我已经尝试过重新运行工作流,并删除旧的工作流。
【问题讨论】:
-
您正在使用
actions/cache缓存您的 R 库。也许key或restore-keys设置不正确,它们恢复了现在“无效”的缓存。但我真的说不出来,因为我不了解 R 及其包管理。而且我不知道为什么您在其他操作系统中没有同样的问题。 -
@riQQ 看起来像!缓存键是操作系统、R 版本和系统依赖项列表的组合。这些都没有从较早的提交更改为这次提交,因此它必须恢复错误的缓存。 Windows 检查成功是因为那里没有使用缓存,而 Linux 检查是因为早期的构建失败并且没有创建缓存。
-
不知道有没有办法清除缓存?
-
好吧,我更改了缓存键,这似乎已经修复了工作流程。虽然很笨重,但希望他们能在某个时候允许清除缓存
标签: r github github-actions