

• AWS Systems Manager CloudWatch ダッシュボードは、2026 年 4 月 30 日以降は利用できなくなります。お客様は、これまでと同様に Amazon CloudWatch コンソールを使用して、Amazon CloudWatch ダッシュボードの表示、作成、管理を継続できます。詳細については、「[Amazon CloudWatch ダッシュボードのドキュメント](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)」を参照してください。

# `aws:branch` – 条件付きオートメーションステップを実行する
<a name="automation-action-branch"></a>

`aws:branch` アクションを使用すると、1 つのステップでさまざまな選択肢を評価し、その評価結果に基づいてランブックの別のステップにジャンプする、動的なオートメーションを作成できます。

ステップの `aws:branch` アクションを指定する場合、オートメーションが評価する必要のある `Choices` を指定します。`Choices` は、Runbook の `Parameters` セクションで指定した値、または前述のステップの出力として生成された動的値のいずれかをベースにすることができます。自動化は、ブール式を使用して各選択肢を評価します。最初の選択肢が true である場合、オートメーションはその選択肢に指定されたステップにジャンプします。最初の選択肢が false の場合、オートメーションは次の選択肢を評価します。オートメーションは、選択肢が true になるまで、各選択肢の評価を続けます。オートメーションは、true の選択肢に指定されたステップにジャンプします。

true の選択肢がない場合、オートメーションはステップに `default` 値が含まれているかどうかを確認します。デフォルト値は、true の選択肢がない場合にオートメーションがジャンプするステップを定義します。ステップに `default` 値が指定されていない場合、オートメーションはランブックの次のステップを処理します。

`aws:branch` アクションは、`And`、`Not`、および `Or` 演算子の組み合わせを使用して複雑な選択肢の評価をサポートします。サンプルのランブックや、さまざまな演算子を使用する例を含む `aws:branch` の使用方法については、「[ランブックでの条件文の使用](automation-branch-condition.md)」を参照してください。

**Input**  
ステップに 1 つ以上の `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
```

選択肢  
次のステップを決定し処理する際に、自動化が評価する 1 つ以上の式。選択肢はブール式を使用して評価されます。各選択肢は、次のオプションを定義する必要があります。  
+ **NextStep**: 指定された選択肢が true である場合に処理する、Runbook の次のステップ。
+ **Variable**: Runbook の `Parameters` セクションで定義されているパラメータの名前を指定します。または、Runbook の前述のステップからの出力オブジェクトを指定します。`aws:branch` の変数作成の詳細については、「[出力変数の作成について](automation-branch-condition.md#branch-action-output)」を参照してください。
+ **Operation**: 選択肢を評価するために使用される基準。`aws:branch` アクションは、次の操作をサポートします。

**文字列演算子**
  + StringEquals
  + EqualsIgnoreCase
  + StartsWith
  + EndsWith
  + Contains

**数値演算子**
  + NumericEquals
  + NumericGreater
  + NumericLesser
  + NumericGreaterOrEquals
  + NumericLesser
  + NumericLesserOrEquals

**ブール演算子**
  + BooleanEquals
**重要**  
ランブックを作成すると、システムはランブック内の各オペレーションを検証します。オペレーションがサポートされていない場合は、ランブックの作成時にエラーが返されます。

デフォルト  
true の `Choices` がない場合にオートメーションがジャンプするステップの名前。  
型: 文字列  
必須: いいえ

**注記**  
`aws:branch` アクションは、`And`、`Or`、および `Not` 演算子をサポートします。演算子を使用する `aws:branch` の例については、「[ランブックでの条件文の使用](automation-branch-condition.md)」を参照してください。