我需要由gitlab-ci.yml(运行Ubuntu 14.04)创建的VM来安装打包器,然后访问和下载我的整个私有gitlab repo,或者只是来自该repo的单个文件。
首先,我尝试在我的脚本中创建一个ssh密钥,用于创建容器和vm,然后将.pub远程添加到gitlab repo。但是我忘了在构建完成后丢弃新创建的容器。这意味着每次创建容器时都会生成新密钥。
无论如何我可以动态添加和删除私钥GitLab仓库的密钥吗?
答案 0 :(得分:4)
在GitLab CI Docker容器中使用SSH密钥访问GitLab服务器上的其他存储库:
before_script
的秘密变量 .gitlab-ci.yml
文件GITLAB_HOST_KEY
before_script
.gitlab-ci.yml
文件before_script:
# Add SSH private key and GitLab server host key
- eval $(ssh-agent -s)
- ssh-add <(echo "$SSH_PRIVATE_KEY")
- mkdir -p /root/.ssh
- echo "$GITLAB_HOST_KEY" >> /root/.ssh/known_hosts
IndexOutOfBoundException