如何在Travis CI上为R包运行covr :: codecov()

时间:2019-07-06 18:27:50

标签: r travis-ci covr

我正在尝试通过Codecov向我的个人R包library(covr)添加sesh支持。

当我在本地检查覆盖率测试并报告时没有发生任何事故:

covr::package_coverage()
sesh Coverage: 68.75%
R/executeDevtoolDocument.R: 0.00%
R/sesh.R: 69.23%

但是当它在Travis上运行时,会遇到缺少token的错误:

$ Rscript -e 'covr::codecov()'
Error in if (nzchar(token)) { : argument is of length zero 
Calls: <Anonymous>
Execution halted

R CMD检查在Travis上成功运行。

.travis.yml的内容:

language: R

matrix:
  include:
  - r: release
    after_success: Rscript -e 'covr::codecov()'

r_github_packages:
  - r-lib/covr

以及指向最新Travis report的链接。

我尝试忠实地遵循covr README进行设置。自述文件说,不需要 CODECOV_TOKEN就可以支持Travis,所以我还没有尝试过。

我在这里想念什么?

2 个答案:

答案 0 :(得分:1)

以下是我的.travis.yml

language: r

cache: packages

script:
- R CMD build .
- R CMD check *tar.gz

r_github_packages:
  - r-lib/covr

after_success:
  - Rscript -e 'covr::codecov()'

答案 1 :(得分:0)

将存储库上传令牌添加到codecov.yml可以避免该错误并成功运行覆盖率报告。

codecov:
  token: a1c53d1f-266f-47bc-bb23-3b3d67c57b2d

可以在代码库页面的“设置(选项卡)>>>常规(边栏)”菜单中找到该令牌(仅在登录后才可见)。