我是私人团体的一员(我们部门的团队)。所有底层项目和子组只能是私有的(这就是 GitLab 的工作方式),我们都至少有报告级别的访问权限。 不要与每个用户的个人命名空间混淆!
我为我正在处理的大型 Django 项目创建了一个包含多个存储库的子组。其中一个存储库(主要,还包括
manage.py
以及django-admin
用来配置和运行整个项目的Django项目主文件)正在引用其他几个作为子模块(Django应用程序)。
我正在尝试使用在主仓库中配置的 Kaniko 创建一个构建作业,并使用仓库自己的代码以及所有子模块来完成应用程序。可悲的是,我遇到了身份验证问题.
即使我是子组的所有者以及内部的存储库,克隆子模块显然仍然需要用户名和密码。我的设置不允许我使用
git config
添加所需的凭据 - 一个自动生成的 CI 用户和 CI_JOB_TOKEN
- 我决定研究在以某种方式链接的所有回购之间共享这些凭据(主回购+子模块) .
在 GitLab 的 Web UI 的 CI/CD 部分,我有以下选项:
我试图将项目的路径设置为我的主仓库,该仓库使用当前仓库作为子模块。但是,我越来越
The target_project that you are attempting to access does not exist or you don't have permission to perform this action
该项目确实存在(尝试使用和不使用
.git
后缀)所以唯一剩下的就是凭证问题。
我可能错过了一个提示,但是官方文档没有说私人回购不能共享令牌。