如何在我的组织中的多个项目中应用 github 操作?

问题描述 投票:0回答:1

在我的公司,我们有几百个存储库,对于其中至少 20 个,我们希望通过执行 github 操作来应用 linting。 将相同的 github 操作工作流程复制到每个

.github/workflows
文件夹中似乎不太好,原因有几个:一是操作重复,没有单一的事实来源,如果我们更改它,则应该在某处有一个文件,然后是所有其他文件改变。

如何将一个 github 操作应用于多个 github 存储库,而不将此文件复制到每个 github 项目中的每个

.github/workflows
文件夹中? 这是一个github企业帐户。

github github-actions
1个回答
1
投票

2024 年第一季度:旧的“组织范围内所需的工作流程”(见下文第二部分)已替换为规则集

规则集是适用于一个存储库或组织中的多个存储库的命名规则列表。
您可以创建规则集来控制人们如何与存储库中选定的分支和标签进行交互。
您可以控制诸如谁可以将提交推送到某个分支以及提交必须如何格式化,或者谁可以删除或重命名标签之类的事情。

例如,您可以为存储库的功能分支设置一个规则集,该规则集需要签名提交并阻止除存储库管理员之外的所有用户的强制推送。

例如参见“要求工作流程在合并之前通过

可以在组织级别配置规则集工作流,以要求工作流在合并拉取请求之前通过。
有关“为组织中的存储库创建规则集”的更多信息


原始答案:检查这个新功能(2023 年 1 月)是否有帮助:

GitHub Actions – 支持组织范围内所需的工作流程公开测试版(2023 年 1 月)

今天,我们宣布 GitHub Actions 中所需工作流程的公开测试版

所需的工作流程允许 DevOps 团队在组织内的许多源代码存储库中定义和实施标准 CI/CD 实践,而无需单独配置每个存储库。
组织管理员可以配置所需的工作流程以在组织内的所有或选定的存储库上运行。

所需的工作流程将在默认分支上打开的所有拉取请求所需的状态检查时触发,这会阻止合并拉取请求的能力,直到所需的工作流程成功为止。

存储库级别的各个开发团队将能够查看哪些所需的工作流程已应用于其存储库。

https://i0.wp.com/user-images.githubusercontent.com/25578249/211552010-d7aa7c25-f204-4c20-a04b-9c53f74ec52e.png?ssl=1 - 所需的工作流程在存储库运行

除了减少 CI/CD 配置代码的重复之外,所需的工作流程还可以帮助公司实现以下用例:

  • 安全:调用外部漏洞评分或动态分析工具。

  • 合规性:确保所有代码符合企业的质量标准。

  • 部署:确保代码以标准方式持续部署。

了解有关所需工作流程的更多信息

© www.soinside.com 2019 - 2024. All rights reserved.