我们使用Github + CircleCI + Heroku进行自动部署设置。有时候会出现CI未捕获到的部署错误(即使CI运行良好,部署失败)。我们为所有PR设置了审查应用程序。如果审查应用程序的部署失败,那么如果PR能指示此情况并阻止我们合并将是很好的(通常意味着暂存/生产应用程序的部署也会失败)。我找不到任何关于此的文档。我唯一能想到的方法是使用GitHub API添加此自定义检查。有人解决了这个问题吗?
您可以使用Github的受保护分支来实现此操作https://help.github.com/en/articles/enabling-required-status-checks
导航到您的存储库设置 -> 分支 -> 添加保护规则 -> 选择“合并前要求状态检查”并选择“CircleCI”。
为了使此功能正常工作,您需要在部署失败时导致CI失败。如果您从Heroku获得失败,则应运行任何将返回exit 1
作为状态代码的命令,这将为您失败CI。