我正在尝试在git Lab社区版中使用管道。
据我所知,从gitlab来看,代码和管道都位于同一个git存储库中。
在我的场景中,管道是devop团队和开发团队的代码的责任。
在git实验室中,如何防止开发人员更改管道? 我知道可以将devops团队添加为维护者来审查请求请求,但这会在每次更改中创建devops团队的依存关系。
谢谢
答案 0 :(得分:0)
GitLab并非真正针对您所描述的场景而设计。通常的想法是,开发人员自己负责配置CI。
您可以尝试使用includes feature将大量CI配置存储在单独的存储库中。
在应用程序存储库中,您将拥有一个.gitlab-ci.yml
文件,该文件使用include-project从另一个存储库中提取CI配置:
include:
- project: 'my-group/my-ciproject'
ref: master
file: '/ci/.gitlab-ci-myappproject.yml'
然后在my-group / my-ciproject存储库中,您将拥有一个文件.gitlab-ci-myappproject.yml
,其中包含GitLab CI作业配置。
build:
script:
- dobuild
只有DevOps团队可以访问my-group / my-ciproject存储库,因此开发人员无法编辑CI配置(尽管可能会干扰应用存储库中的.gitlab-ci.yml`文件)。 / p>
或者,您可以保护master分支,并在合并到master之前批准所有更改。这样开发人员将无法在未经批准的情况下对CI进行更改。