

亚马逊 CodeCatalyst 不再向新买家开放。现有客户可以继续正常使用该服务。有关更多信息，请参阅 [如何从中迁移 CodeCatalyst](migration.md)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 用阶段门控制工作流运行
<a name="workflows-gates"></a>

*阶段门*是一个工作流组件，您可以用它来要求工作流必须满足特定条件才能继续运行。门禁的一个例子是**批准**门，在该门禁中，用户必须在 CodeCatalyst控制台中提交批准，然后才能允许工作流程继续运行。

您可以在工作流中的操作序列之间或在第一个操作（**源**下载后立即运行）之前添加阶段门。如果需要的话，您也可以在最后一个操作之后添加阶段门。

有关工作流运行的更多信息，请参阅[运行工作流](workflows-working-runs.md)。

**Topics**
+ [阶段门类型](#workflows-gates-types)
+ [我可以设置阶段门与其他操作并行运行吗？](#workflows-approval-parallel)
+ [我能否使用阶段门来阻止工作流运行的启动？](#workflows-gates-prevent)
+ [阶段门的限制](#workflows-gate-limitations)
+ [向工作流添加阶段门](workflows-gates-add.md)
+ [按顺序执行阶段门和操作](workflows-gates-depends-on.md)
+ [指定阶段门的版本](workflows-gates-version.md)

## 阶段门类型
<a name="workflows-gates-types"></a>

目前，Amazon CodeCatalyst 支持一种门禁：**批准**门。有关更多信息，请参阅 [要求批准工作流运行](workflows-approval.md)。

## 我可以设置阶段门与其他操作并行运行吗？
<a name="workflows-approval-parallel"></a>

不能。阶段门只能在操作之前或之后运行。有关更多信息，请参阅[按顺序执行阶段门和操作](workflows-gates-depends-on.md)。

## 我能否使用阶段门来阻止工作流运行的启动？
<a name="workflows-gates-prevent"></a>

可以，有资格要求。

您可以阻止工作流运行去*执行任务*，这与阻止其*启动*略有不同。

要阻止工作流执行任务，请在工作流中的第一个操作之前添加阶段门。在这种情况下，工作流运行*将启动*，这意味着它将下载您的源存储库文件，但在阶段门解锁之前，它无法执行任务。

**注意**  
在启动后被阶段门阻止的工作流仍计入*每个空间的并行工作流运行最大数量*配额和其他配额。为确保您不会超过工作流配额，请考虑使用工作流触发器来有条件地启动工作流，而不是使用阶段门。还可以考虑使用拉取请求批准规则代替阶段门。有关配额、触发器和拉取请求批准规则的更多信息，请参阅 [中的工作流程配额 CodeCatalyst](workflows-quotas.md)、[使用触发器自动启动工作流运行](workflows-add-trigger.md)和[管理将拉取请求与审批规则合并的要求](source-pull-requests-approval-rules.md)。

## 阶段门的限制
<a name="workflows-gate-limitations"></a>

阶段门具有以下限制：
+ 阶段门不能与计算共享功能结合使用。有关此特征的更多信息，请参阅[跨操作共享计算](compute-sharing.md)。
+ 阶段门不能在操作组中使用。有关操作组的更多信息，请参阅[将操作分组为操作组](workflows-group-actions.md)。