{"meta":{"title":"配置自定义部署保护规则","intro":"使用 GitHub Apps 通过第三方系统自动保护部署。","product":"GitHub Actions","breadcrumbs":[{"href":"/zh/actions","title":"GitHub Actions"},{"href":"/zh/actions/how-tos","title":"操作方法"},{"href":"/zh/actions/how-tos/deploy","title":"部署"},{"href":"/zh/actions/how-tos/deploy/configure-and-manage-deployments","title":"配置和管理部署"},{"href":"/zh/actions/how-tos/deploy/configure-and-manage-deployments/configure-custom-protection-rules","title":"配置自定义保护规则"}],"documentType":"article"},"body":"# 配置自定义部署保护规则\n\n使用 GitHub Apps 通过第三方系统自动保护部署。\n\n> \\[!NOTE]\n> 自定义部署保护规则目前为 公共预览版，可能随时更改。\n\n## 关于自定义部署保护规则\n\n自定义部署保护规则由 GitHub Apps 提供支持。 在存储库中配置并安装部署保护规则后，可以为存储库中的任何环境启用该规则。\n\n在环境中启用自定义部署保护规则后，每当工作流步骤瞄准该环境时，部署保护规则都将自动运行。 有关瞄准要部署的环境的详细信息，请参阅“[管理部署环境](/zh/actions/deployment/targeting-different-environments/managing-environments-for-deployment)”。\n\n触发自定义部署保护规则时，将等待 Webhook 事件响应，最长等待时间为 30 天，否则将超时并导致工作流作业失败。\n\n有关创建自己的自定义部署保护规则的详细信息，请参阅“[创建自定义部署保护规则](/zh/actions/deployment/protecting-deployments/creating-custom-deployment-protection-rules)”。\n\n> \\[!NOTE]\n> 可以在存储库中安装任意数量的基于 GitHub Apps 的部署保护规则。 但是，最多可以同时在环境中启用 6 个部署保护规则。\n\n## 使用现有自定义部署保护规则\n\n可以选择创建自己的自定义部署保护规则，也可以使用任何现有的自定义部署保护规则。\n\n下面是部署保护规则的官方合作伙伴实现列表。\n\n* Datadog：可以使用 Datadog 监视器对 GitHub Actions 部署工作流强制实施保护规则。 有关详细信息，请参阅 Datadog 文档中的[使用 Datadog 监视器限制 GitHub Actions 部署](https://docs.datadoghq.com/continuous_integration/guides/github_gating/)。\n* Honeycomb：可以根据发送到 Honeycomb 的数据定义拒绝或批准部署的阈值。 有关详细信息，请参阅 GitHub Marketplace 中的 [Honeycomb 应用](https://github.com/apps/honeycomb-io)。\n* New Relic：有关详细信息，请参阅 GitHub Marketplace 中的 [New Relic 应用](https://github.com/apps/new-relic-gate)。\n* NCM NodeSource：有关详细信息，请参阅 GitHub Marketplace 中的 [NCM NodeSource 应用](https://github.com/apps/ncm-nodesource)。\n* ServiceNow：有关详细信息，请参阅 ServiceNow 文档中的 [GitHub 与 DevOps Change Velocity](https://www.servicenow.com/docs/bundle/utah-devops/page/product/enterprise-dev-ops/concept/github-integration-dev-ops.html) 集成。\n\n## 先决条件\n\n为了使自定义部署保护规则可用于存储库中的所有环境，必须先在存储库上安装自定义部署保护规则。 有关详细信息，请参阅“[安装自己的GitHub应用](/zh/apps/maintaining-github-apps/installing-github-apps)”。\n\n在存储库中安装自定义部署保护规则后，必须为要应用该规则的每个环境启用该规则。\n\n## 为环境启用自定义部署保护规则\n\n1. 在 GitHub 上，导航到存储库的主页面。1. 在仓库名称下，单击 <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg>“Settings”\\*\\*\\*\\*。 如果看不到“设置”选项卡，请选择“<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"kebab horizontal icon\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>”下拉菜单，然后单击“设置”。\n\n   ![存储库标头的屏幕截图，其中显示了选项卡。 “设置”选项卡以深橙色边框突出显示。](/assets/images/help/repository/repo-actions-settings.png)1. 在左侧边栏中，单击“环境”。\n2. 选择要配置的环境。\n3. 在“部署保护规则”下，选中要为环境启用的每个自定义部署保护规则旁边的框。\n4. 单击“保存保护规则”。\n\n为环境启用自定义部署保护规则后，每当工作流到达引用环境的作业时，该规则都将自动运行。 可以通过查看部署的详细信息来查看部署的批准或拒绝结果。 有关详细信息，请参阅“[审查部署](/zh/actions/managing-workflow-runs/reviewing-deployments)”。"}