

• El panel de AWS Systems Manager CloudWatch dejará de estar disponible después del 30 de abril de 2026. Los clientes pueden seguir utilizando la consola de Amazon CloudWatch para ver, crear y administrar sus paneles de Amazon CloudWatch, tal y como lo hacen actualmente. Para obtener más información, consulte la [documentación del panel de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

# `aws:branch`: ejecutar pasos de automatización condicionales
<a name="automation-action-branch"></a>

La acción `aws:branch` le permite crear una automatización dinámica que evalúa diferentes elecciones en un solo paso y, a continuación, salta a otro paso en el manual de procedimientos en función de los resultados de dicha evaluación. 

Cuando se especifica la acción `aws:branch` para un paso, se especifican `Choices` que la automatización debe evaluar. Las `Choices` pueden basarse en un valor que especificó en la sección `Parameters` del manual de procedimientos o en un valor dinámico generado como la salida del paso anterior. La automatización evalúa cada elección mediante una expresión booleana. Si la primera elección es true, la automatización saltará al paso designado para esa elección. Si la primera elección es false, la automatización evaluará la siguiente elección. La automatización sigue evaluando cada elección hasta que procese una elección true. A continuación, la automatización saltará al paso designado para la elección true.

Si ninguna de las elecciones es true, la automatización comprueba si el paso contiene un valor `default`. Un valor predeterminado define un paso al cual la automatización debe saltar si ninguna de las elecciones es true. Si no se especifica un valor `default` para el paso, la automatización procesará el siguiente paso en el manual de procedimientos.

La acción `aws:branch` admite evaluaciones de elecciones complejas mediante una combinación de operadores `And`, `Not` y `Or`. Para obtener más información acerca de cómo utilizar `aws:branch`, así como ejemplos de manuales de procedimientos y ejemplos que utilizan diferentes operadores, consulte [Uso de instrucciones condicionales en manuales de procedimientos](automation-branch-condition.md).

**Input**  
Especifique una o más `Choices` en un paso. Las `Choices` pueden basarse en un valor que especificó en la sección `Parameters` del manual de procedimientos o en un valor dinámico generado como la salida del paso anterior. A continuación se muestra un ejemplo de YAML que evalúa un parámetro.

```
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
```

A continuación se muestra un ejemplo de YAML que evalúa la salida de un paso anterior.

```
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  
Una o más expresiones que la Automation debe evaluar a la hora de determinar el siguiente paso que procesar. Las elecciones se evalúan mediante una expresión booleana. Cada elección debe definir las siguientes opciones:  
+ **NextStep**: el siguiente paso en el manual de procedimientos que se debe procesar si la elección designada es true.
+ **Variable**: especifique el nombre de un parámetro que se define en la sección `Parameters` del manual de procedimientos. O bien, especifique un objeto de salida de un paso anterior del manual de procedimientos. Para obtener más información sobre cómo crear variables para `aws:branch`, consulte [Acerca de la creación de la variable de salida](automation-branch-condition.md#branch-action-output).
+ **Operation**: los criterios utilizados para evaluar la elección. La acción `aws:branch` admite las siguientes operaciones:

**Operaciones de cadena**
  + StringEquals
  + EqualsIgnoreCase
  + StartsWith
  + EndsWith
  + Contiene

**Numeric operations**
  + NumericEquals
  + NumericGreater
  + NumericLesser
  + NumericGreaterOrEquals
  + NumericLesser
  + NumericLesserOrEquals

**Operación booleana**
  + BooleanEquals
**importante**  
Al crear un manual de procedimientos, el sistema valida cada operación del manual. Si no se admite una operación, el sistema devuelve un error cuando intenta crear el manual de procedimientos.

Predeterminado  
El nombre de un paso al que debe saltar la automatización si ninguna de las `Choices` es true.  
Tipo: cadena  
Requerido: no

**nota**  
La acción `aws:branch` admite los operadores `And`, `Or` y `Not`. Para ver ejemplos de `aws:branch` que utilizan operadores, consulte [Uso de instrucciones condicionales en manuales de procedimientos](automation-branch-condition.md).