我有两个GitLab存储库,它们都在我在GitLab中的用户名下。他们都是私人的。一个存储库是另一个存储库的依赖项,但后者不使用子模块。相反,它会将包安装到 docker 映像。
我读过这个。但是,我不想配置任何令牌或其他复杂的东西。
是否有任何简单友好的方法可以使我的私人存储库对自己透明?
检查CI_JOB_TOKEN
,它是GitLab CI/CD的预定义环境变量之一,无需任何规范即可使用。根据官方文件CI_JOB_TOKEN
描述如下:
用于向 GitLab 容器注册表进行身份验证和下载依赖存储库的令牌
并基于此文档:
作业环境变量
CI_JOB_TOKEN
可用于验证依赖存储库的任何克隆。例如:git clone https://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.com/<user>/<mydependentrepo>.git
因此,您可以通过在您想要gitlab-ci.yml
文件中的每个作业的脚本部分中使用上述代码,将依赖存储库克隆到当前管道中。 无论它使用CI_JOB_TOKEN
而不是您的密码或任何令牌,它都可以正常工作,并且无需担心URL中的gitlab-ci-token
。
您还可以放置每个所需的用户名来代替它。