How GitHub gave every repository a durable owner
19 hours ago
- #GitHub repositories
- #security automation
- #ownership management
- GitHub上曾有超过14,000个代码库,最初只有不到一半拥有明确的归属权。
- 为解决此问题,他们采用了一套新的归属权模型,通过GitHub自定义属性(ownership-type和ownership-name)实现,并与Service Catalog条目、团队存在性及员工账号等真实数据进行了验证。
- 利用GitHub应用和CronJob构建了自动化执行系统,现有代码库享有30天的宽限期,逾期未认领的将被归档(最终约有3,000个活跃库和约11,000个归档库)。
- 实施过程中遇到的问题包括周末意外发送通知,以及边缘情况如归档库中断监控工作流,解决方案包括在通知中@提及管理员及添加低水位警戒线。
- 现在代码库创建时必须指定归属权,执行机制已收紧:任何失去归属权的代码库将在一小时内触发处理,确保持续100%的覆盖率。
- 整个项目耗时不到45天,通过确保每个活跃代码库都有验证过的所有者并归档未使用的库,有效降低了风险。