本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
aws:branch
– 執行條件式自動化步驟
aws:branch
動作可讓您建立動態自動化,以評估單一步驟中的不同選擇,接著根據該評估的結果跳至 Runbook 中的不同步驟。
指定步驟的 aws:branch
動作時,您要指定自動化必須評估的 Choices
。Choices
可根據您在 Runbook 之 Parameters
區段所指定的值,或是產生做為先前步驟之輸出的動態值。自動化會使用布林值表達式評估每個選擇。如果第一個選擇為 true,則自動化會跳至針對該選擇指定的步驟。如果第一個選擇為 false,則自動化會評估下一個選擇。自動化會繼續評估每個選擇,直到處理的選擇是 true 為止。接著自動化會跳至選擇為 true 的指定步驟。
如果選擇均不為 true,則自動化會檢查步驟是否包含 default
值。如果沒有選擇為 true,則預設值會定義自動化應跳至的步驟。如果未針對步驟指定 default
值,則自動化會處理 Runbook 中的下一個步驟。
aws:branch
動作可結合使用 And
、Not
、Or
運算子來支援複雜的選擇評估。如需使用 aws:branch
的詳細資訊,包括使用不同運算子的範例 Runbook 和範例,請參閱 在執行手冊中使用條件陳述式。
Input
在步驟中指定一個或多個 Choices
。Choices
可根據您在 Runbook 之 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
- 選擇
-
在決定要處理的下一個步驟時,自動化應評估的一個或多個運算式。選擇是使用布林值運算式評估。每個選擇都必須定義以下選項:
-
NextStep:如果指定選擇為 true,在 Runbook 中要處理的下一個步驟。
-
Variable (變數):指定 Runbook 之
Parameters
區段中定義的參數名稱。或指定 Runbook 中先前步驟的輸出物件。如需為aws:branch
建立變數的詳細資訊,請參閱 關於建立輸出變數。 -
Operation (運算):用於評估選擇的條件。
aws:branch
動作支援以下運算:字串運算
-
StringEquals
-
EqualsIgnoreCase
-
StartsWith
-
EndsWith
-
包含
數值運算
-
NumericEquals
-
NumericGreater
-
NumericLesser
-
NumericGreaterOrEquals
-
NumericLesser
-
NumericLesserOrEquals
布林運算
-
BooleanEquals
重要
當您建立 Runbook 時,系統會驗證 Runbook 中的每個操作。如果不支援操作,系統會在您嘗試建立 Runbook 時傳回錯誤。
-
-
- 預設
-
自動化在
Choices
均不為 true 時應跳至某步驟的名稱。類型:字串
必要:否
注意
aws:branch
動作支援 And
、Or
、Not
運算子。如需使用運算子的 aws:branch
範例,請參閱 在執行手冊中使用條件陳述式。