如何防止个人或团队编辑特定存储库的基于 GitHub 操作的工作流程?

Sri*_*idi 5 continuous-integration github github-actions

我有一个 GiHub 存储库,其中包含基于 GitHub 操作的工作流程 ( /.github/workflows/build.yml) 来进行 CI 构建。

我来自 DevOps 团队,我的情况是,开发团队的人员不允许更改 CI 管道,他们可以在功能分支上更改任何他们想要的内容,除了/.github/workflows/build.yml.

如何防止开发人员更改 GitHub 工作流程以查看其应用程序更改通过不同类型的集成构建质量检查?

除了下面提到的选项之外,还有其他更好的方法来实现这一目标吗?

1]  Through PR reviews
2]  Script/automation to validate PR to see if dev did any changes to (/.github/workflows/build.yml)
Run Code Online (Sandbox Code Playgroud)

ret*_*hab 1

通过代码所有者,您可以指定允许谁修改某些文件,如下所示:

# .github/CODEOWNERS

.github/workflows/build.yml @myorg/devops-team
Run Code Online (Sandbox Code Playgroud)

有点偏离主题,但请注意,Toughtworks 不建议将代码和管道所有权分开

[..] 总的来说,我们发现它是痛苦且无益的。

  • **代码所有者不限制访问** - 它们仅影响分配给更改某些文件的 PR 的人员。 (2认同)