git - 使用 HTTPS 从 gitlab CI 作业克隆私有(private) Repo 而无需将我的凭据公开到 CLI

标签 git gitlab gitlab-ci gitlab-ci-runner

我有一个 gitlab ci 工作,它为我做了一些工作,但它依赖于另一个 repo,所以我需要在这个工作中克隆另一个 repo。我不能使用 https 克隆,因为 gitlab 会要求我输入用户名和密码,而 gitlab ci 是非交互式的。
那么如何在 gitlab ci 作业中使用 https 克隆 gitlab repo。
提前致谢。

最佳答案

如果您运行的是 gitlab 8.12 或更高版本,则权限模型已重新设计。与这个新的权限模型一起出现的是 CI 环境变量 CI_JOB_TOKEN。 GitLab 的高级版本将此环境变量用于触发器,但您可以使用它来克隆存储库。

dummy_stage:
  script:
    - git clone https://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.instance/group/project.git

关于git - 使用 HTTPS 从 gitlab CI 作业克隆私有(private) Repo 而无需将我的凭据公开到 CLI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57143313/

相关文章:

angular - Gitlab CI 不会将 Angular 应用程序提供给暂存环境

git - 如何将 git diff 本地更改更改为不同的分支?

git - 如何清理一个git项目

html - 我的 Gitlab 存储库中的 Web 访问 HTML 文件

gitlab - 在 GitLab Flavored Markdown 中创建外部链接

http - gitlab服务器如何处理http请求

powershell 无法识别 gitlab CI 环境变量

java - GitHub、当前 Netbeans 6.9 项目和 Git 插件

git - 如何将主干/分支概念从 Subversion 转换到 Git?

Gitlab:无法识别对等方的证书颁发者