aws:branch – Run conditional automation steps - AWS Systems Manager
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

aws:branch – Run conditional automation steps

aws:branch 操作让您能够创建一个动态 Automation 工作流程,该流程在一个步骤中评估不同选择,然后根据评估结果跳转到 Automation 文档中的不同步骤。

在为步骤指定 aws:branch 操作时,请指定工作流程必须评估的 ChoicesChoices 可以基于您在 Automation 文档的 Parameters 部分中指定的值,也可以基于上一步的输出生成的动态值。Automation 工作流程使用布尔表达式评估每个选择。如果第一个选择为真,则工作流程跳转到为此选择指定的步骤。如果第一个选择为假,则工作流程评估下一个选择。工作流程继续评估每个选择,直到遇到结果为真的选择。然后,工作流程跳转到为结果为真的选择指定的步骤。

如果所有选择都为假,则工作流程检查该步骤是否包含 default 值。默认值定义当所有选择都为假时工作流程应跳转到的步骤。如果没有为该步骤指定 default 值,则 Automation 工作流程处理文档中的下一个步骤。

aws:branch 操作通过组合使用 AndNotOr 运算符来支持复杂的选择评估。有关如何使用 aws:branch 的更多信息,包括使用不同运算符的示例文档和示例,请参阅创建动态自动化工作流 有条件分支

Input (输入)

在步骤中指定一个或多个 ChoicesChoices 可以基于您在 Automation 文档的 Parameters 部分中指定的值,也可以基于上一步的输出生成的动态值。下面是一个评估参数的 YAML 示例。

mainSteps: - name: chooseOS action: aws:branch inputs: Choices: - NextStep: runWindowsCommand Variable: "{{Name of a parameter defined in the Parameters section. For example: OS_name}}" StringEquals: windows - NextStep: runLinuxCommand Variable: "{{Name of a parameter defined in the Parameters section. For example: OS_name}}" StringEquals: linux Default: sleep3

下面是一个评估上一步输出的 YAML 示例。

mainSteps: - name: chooseOS action: aws:branch inputs: Choices: - NextStep: runPowerShellCommand Variable: "{{Name of a response object. For example: GetInstance.platform}}" StringEquals: Windows - NextStep: runShellCommand Variable: "{{Name of a response object. For example: GetInstance.platform}}" StringEquals: Linux Default: sleep3
Choices

Automation 在确定下一个要处理的步骤时应评估的一个或多个表达式。通过使用布尔表达式对选择进行评估。每个选择都必须定义以下选项:

  • NextStep: The next step in the Automation document to process if the designated choice is true.

  • Variable: Specify either the name of a parameter that is defined in the Parameters section of the Automation document. Or specify an output object from a previous step in the Automation document. For more information about creating variables for aws:branch, see 关于 创建输出变量.

  • Operation: The criteria used to evaluate the choice. The aws:branch action supports the following operations:

    String operations

    • StringEquals

    • EqualsIgnoreCase

    • StartsWith

    • EndsWith

    • Contains

    Numeric operations

    • NumericEquals

    • NumericGreater

    • NumericLesser

    • NumericGreaterOrEquals

    • NumericLesser

    • NumericLesserOrEquals

    Boolean operation

    • BooleanEquals

    重要

    When you create an Automation document, the system validates each operation in the document. If an operation is not supported, the system returns an error when you try to create the document.

默认值:

当所有 Choices 都为假时,工作流程应跳转到的步骤的名称。

Type :字符串

必填 否

注意

TheThethe aws:branch 操作支持 AndOr,和 Not 操作员。有关使用运算符的 aws:branch 的示例,请参阅创建动态自动化工作流 有条件分支