【问题标题】:gitlab CI install R package from private repositorygitlab CI 从私有存储库安装 R 包
【发布时间】:2021-02-04 22:42:00
【问题描述】:

我正在尝试为位于私有存储库中的 R 包构建 gitlab CI 文件。这个包依赖于另一个私有存储库中的另一个 R 包。要安装依赖包,我使用以下方法,我确信这不是最好的,因为用户名/密码详细信息已暴露。

是否有其他方法可以从私有 gitlab 存储库安装依赖包?

image: rocker/rstudio

stages:
- build

build_job:
  stage: build
  before_script:
    - apt-get update

  script:
    - Rscript -e "install.packages(c('covr','testthat','devtools'))"
    - Rscript -e "devtools::install_git('https://username:password@gitlab.com/project.git')"
    - Rscript -e "devtools::test()"
    - R CMD build . --no-build-vignettes --no-manual
    - PKG_FILE_NAME=$(ls -1t *.tar.gz | head -n 1)
    - R CMD check "${PKG_FILE_NAME}" --no-build-vignettes --no-manual
    - mkdir build
    - mv "${PKG_FILE_NAME}" $CI_PROJECT_DIR/build
  artifacts:
    paths:
      - build/
    expire_in: 1 week

【问题讨论】:

    标签: r continuous-integration gitlab


    【解决方案1】:

    经过多次尝试,我找到了一种可行的方法,您可以为您的项目创建一个组令牌并使用它来代替用户名/密码 https://docs.gitlab.com/ee/user/project/deploy_tokens/

    - Rscript -e "devtools::install_git('https://gitlab+deploy-token-891150:gH-QQZ3BHJuioZfZkl1M@gitlab.com/project.git')"
    
    

    【讨论】:

      猜你喜欢
      • 2023-01-26
      • 1970-01-01
      • 1970-01-01
      • 2015-05-06
      • 2014-10-30
      • 2016-11-15
      • 2019-06-21
      • 2023-02-01
      • 2022-01-23
      相关资源
      最近更新 更多