首页 > 解决方案 > 保持 gitlab-ci.yml 不可变的最佳实践是什么?

问题描述

我想让我们的 gitlab-ci.yml 对于大多数组成员保持不变。我如何有效地做到这一点?

这些用户贡献代码,并且必须将代码作为合并的一部分部署到开发分支,因此我不能简单地删除他们对主项目存储库的访问权限,也不能保护开发分支(因为那样他们就无法运行管道)。

我尝试了对位于另一个项目的 CI 文件的触发作业,但我开始认为我不能同时允许项目 YIN 触发 YANG,同时防止这些承包商弄乱我从 Yin 重新定位到 Yang 的部署脚本希望将其锁定。

  1. 我怀疑,为了将提交合并到项目 Yin 并让它在 Yang 中触发部署,用户必须在 Yang 或更高版本中持有开发人员访问权限......这意味着他们也可以在任何分支上提交到 Yang包含他们将触发的 gitlab-ci.yml 文件。真的?

(我不能责备他们,也不能解雇他们。一半的挑战是语言问题,另一半是没有经验,不能碰不属于你的东西)

感谢您的时间。新的触发器:语法似乎比旧的 curl-the-api-URL-and 祈祷技巧工作得更好(阅读:根本),所以至少是这样。如果这是可用的,它仍然是理想的,但真正的目标是一个不可变的 gitlab-ci.yml,所以任何实现成功的方法都会很棒。

标签: securitygitlab-ci

解决方案


推荐阅读