安装失败:凭证错误(401)travis ci with R.

时间:2017-10-13 22:24:11

标签: r travis-ci

我的.travis.yml如下:

language: r
sudo: required
cache: packages

before_install:
  - echo -e "machine github.com\n  login $CI_USER_TOKEN" >> ~/.netrc
  - chmod 755 ./travis-tool.sh

install:
  - ./travis-tool.sh install_github RcppCore/Rcpp
  - ./travis-tool.sh install_github rstats-db/DBI
  - ./travis-tool.sh install_github rstats-db/RPostgres

但是,我无法安装Rcpp软件包。它抛出以下错误

+InstallGithub RcppCore/Rcpp
+EnsureDevtools
+Rscript -e 'if (!("devtools" %in% rownames(installed.packages()))) q(status=1)'
+echo 'Installing GitHub packages: RcppCore/Rcpp'
Installing GitHub packages: RcppCore/Rcpp
+Rscript -e 'devtools::install_github(commandArgs(TRUE),host = '\''https://api.github.com'\'', dependencies = FALSE)' RcppCore/Rcpp
Using GitHub PAT from envvar GITHUB_PAT
Downloading GitHub repo RcppCore/Rcpp@master
from URL https://api.github.com/repos/RcppCore/Rcpp/zipball/master
Installation failed: Bad credentials (401)

我从github

复制了travis-tools.sh文件

感谢任何帮助

1 个答案:

答案 0 :(得分:1)

无法解释为什么.netrc方法不起作用(可能R-client只是忽略它而不像curl),但根据documentation,使用{{1}登录的正确方法是设置install_github环境变量。也许,比如:

GITHUB_PAT

基本上,您的日志表明env: - GITHUB_PAT=$CI_USER_TOKEN 用于登录尝试:

  

+ Rscript -e' devtools :: install_github(commandArgs(TRUE),host =' \'' https://api.github.com' \' ',依赖= FALSE)' RcppCore / RCPP

     

使用envvar GITHUB_PAT的GitHub PAT

您还可以阅读这篇文章:https://www.r-bloggers.com/using-travis-make-sure-you-use-a-github-pat/