出于审计/法规遵从性的原因,我希望能够将GitHub中的每个提交都归结到一个问题,并跟踪类似Jira的问题,并且除非有合适的链接,否则禁止合并请求请求。 Status API涵盖了此功能,其中GitHub将拒绝允许将分支合并到受保护分支(例如master)中,在该分支中,要合并的分支无法进行状态检查。
我的外部CI系统配置为查看每个GitHub事件,并在适当的情况下将状态与提交相关联。
如果我检查分支的名称或PR的标题,那么我可以确认两者都遵循某种命名约定,例如ABC-123
,其中ABC-123
是Jira中的问题。该状态与PR或分支的头提交有关。但是,如果创建了一个单独的分支或PR,指向同一提交,则将针对该提交重新运行检查,从而可能更改检查的状态。在以下情况下会出现故障情况(假设PR的标题需要以正则表达式ABC-[0-9]{1,4}
开头才能被视为有效):
non-compliant
的PR#1。failure
。ABC-123 this is a compliant branch
。success
。是否可以通过GitHub API在PR /分支命名级别上执行检查以确保一致性?
我是否必须在提交级别执行检查,即确保每个提交在其注释中都有适当的问题?