

Amazon ya no CodeCatalyst está abierto a nuevos clientes. Los clientes existentes pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulte [Cómo migrar desde CodeCatalyst](migration.md).

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Adición de desencadenadores a flujos de trabajo
<a name="workflows-add-trigger-add"></a>

Sigue las siguientes instrucciones para añadir un activador de inserción, extracción o programación a tu CodeCatalyst flujo de trabajo de Amazon.

Para obtener más información acerca de los desencadenadores, consulte [Inicio de un flujo de trabajo y ejecución automática mediante desencadenadores](workflows-add-trigger.md).

------
#### [ Visual ]<a name="workflows-add-trigger-add-console"></a>

**Adición de un desencadenador (editor visual)**

1. Abre la CodeCatalyst consola en [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Elija el proyecto.

1. En el panel de navegación, elija **CI/CD** y, a continuación, elija **Flujos de trabajo**.

1. Elija el nombre del flujo de trabajo. Puede filtrar por el nombre del repositorio de código fuente o la ramificación donde esté definido el flujo de trabajo, o bien por el nombre o el estado del flujo de trabajo.

1. Elija **Edit (Edición de)**.

1. Elija **Visual**.

1. En el diagrama de flujo de trabajo, seleccione las casillas **Origen** y **Desencadenadores**.

1. En el panel de configuración, seleccione **Agregar desencadenador**.

1. En el cuadro de diálogo **Agregar desencadenador**, introduzca la información en los campos, de la siguiente manera.

    **Tipo de desencadenador** 

   Especifique el tipo de desencadenador. Puede utilizar uno de los siguientes valores:
   + **Insertar** (editor visual) o `PUSH` (editor de YAML)

     Un desencadenador de inserción inicia la ejecución de un flujo de trabajo cuando se envía un cambio al repositorio de código fuente. La ejecución del flujo de trabajo utilizará los archivos de la ramificación *a* la que realiza la inserción (es decir, la ramificación de destino).
   + **Solicitud de extracción** (editor visual) o `PULLREQUEST` (editor de YAML)

     Un desencadenador de este tipo inicia la ejecución de un flujo de trabajo cuando se abre, actualiza o cierra una solicitud de extracción en el repositorio de código fuente. La ejecución del flujo de trabajo utilizará los archivos de la ramificación *desde* la que realiza la extracción (es decir, la ramificación de origen).
   + **Programación** (editor visual) o `SCHEDULE` (editor de YAML)

     Un desencadenador de tipo programación inicia las ejecuciones del flujo de trabajo según una programación definida por una expresión cron que especifique. Se iniciará una ejecución de flujo de trabajo independiente para cada ramificación del repositorio de código fuente utilizando los archivos de la ramificación. (Para limitar las ramificaciones en las que se activa el desencadenador, use el campo **Ramificaciones** (editor visual) o la propiedad `Branches` (editor de YAML)).

     Cuando configure un desencadenador de programación, siga estas directrices:
     + Utilice solo un desencadenador de programación por flujo de trabajo.
     + Si ha definido varios flujos de trabajo en su CodeCatalyst espacio, le recomendamos que no programe más de 10 de ellos para que se inicien simultáneamente.
     + Asegúrese de configurar la expresión cron del desencadenador con el tiempo adecuado entre ejecuciones. Para obtener más información, consulte [Expression](workflow-reference.md#workflow.triggers.expression).

   Para ver ejemplos, consulte [Ejemplos: Desencadenadores en flujos de trabajo](workflows-add-trigger-examples.md).

    **Eventos para solicitud de extracción** 

   Este campo solo aparece si ha seleccionado el tipo de desencadenador **Solicitud de extracción**.

   Especifica el tipo de eventos de solicitud de extracción que iniciarán la ejecución de un flujo de trabajo. Los siguientes valores son los válidos:
   + **Se crea una solicitud de extracción** (editor visual) o `OPEN` (editor de YAML)

     La ejecución del flujo de trabajo se inicia cuando se crea una solicitud de extracción.
   + **La solicitud de extracción está cerrada** (editor visual) o `CLOSED` (editor de YAML)

     La ejecución del flujo de trabajo se inicia cuando se cierra una solicitud de extracción. El comportamiento del evento `CLOSED` es complejo y se entiende mejor con un ejemplo. Para obtener más información, consulte [Ejemplo: Desencadenador con una extracción, ramificaciones y un evento CLOSED](workflows-add-trigger-examples.md#workflows-add-trigger-examples-push-pull-close).
   + **Se realiza una nueva revisión para la solicitud de extracción** (editor visual) o `REVISION` (editor de YAML)

     La ejecución del flujo de trabajo se inicia cuando se crea una revisión de una solicitud de extracción. La primera revisión se crea cuando se crea la solicitud de extracción. Después se crea una nueva revisión cada vez que alguien envía una nueva confirmación a la ramificación de origen especificada en la solicitud de extracción. Si incluye el evento `REVISION` en el desencadenador de la solicitud de extracción, puede omitir el evento `OPEN`, ya que `REVISION` es un superconjunto de `OPEN`.

   Puede especificar varios eventos en el mismo desencadenador de la solicitud de extracción.

   Para ver ejemplos, consulte [Ejemplos: Desencadenadores en flujos de trabajo](workflows-add-trigger-examples.md).

    **Programación** 

   Este campo solo aparece si ha seleccionado el tipo de desencadenador **Programación**.

   Especifique la expresión cron que describe cuándo desea que se ejecuten sus flujos de trabajo programados.

   Las expresiones cron CodeCatalyst utilizan la siguiente sintaxis de seis campos, en la que cada campo está separado por un espacio:

   *minutes* *hours* *days-of-month* *month* *days-of-week* *year*

   **Ejemplos de expresiones cron**    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/codecatalyst/latest/userguide/workflows-add-trigger-add.html)

   Al especificar las expresiones cron CodeCatalyst, asegúrese de seguir estas pautas:
   + Especifique una sola expresión cron por desencadenador `SCHEDULE`.
   + Escriba la expresión cron entre comillas dobles (`"`) en el editor de YAML.
   + Especifique la hora en tiempo universal coordinado (UTC). El resto de zonas horarias no son compatibles.
   + Configure al menos 30 minutos entre ejecuciones. Una cadencia más rápida no es compatible.
   + Especifique el *days-of-week* campo *days-of-month* o, pero no ambos. Si especifica un valor o un asterisco (`*`) en uno de los campos, debe utilizar un signo de interrogación (`?`) en el otro. El asterisco significa todos y el signo de interrogación significa cualquiera.

    Para obtener más ejemplos de expresiones cron e información sobre caracteres comodín`?`, como, y `*``L`, consulte la [referencia sobre expresiones cron en](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-cron-expressions.html) la Guía del usuario de *Amazon EventBridge *. Las expresiones cron CodeCatalyst funcionan EventBridge y funcionan exactamente de la misma manera.

   Para ver ejemplos de desencadenadores de programación, consulte [Ejemplos: Desencadenadores en flujos de trabajo](workflows-add-trigger-examples.md).

    **Ramificaciones** y **Patrón de ramificación** 

   (Opcional)

   Especifica las ramificaciones del repositorio de código fuente que supervisa el desencadenador para saber cuándo iniciar la ejecución de un flujo de trabajo. Puede usar patrones de expresiones regulares para definir los nombres de las ramificaciones. Por ejemplo, use `main.*` para hacer coincidir todas las ramificaciones que comiencen por `main`.

   Las ramificaciones que se deben especificar son diferentes en función del tipo de desencadenador:
   + En el caso de un desencadenador de inserción, especifique las ramificaciones *en* las que va a realizar la inserción, es decir, las ramificaciones de *destino*. Se iniciará una ejecución de flujo de trabajo por cada ramificación coincidente, utilizando los archivos de la ramificación coincidente.

     Ejemplos: `main.*`, `mainline`
   + En el caso de un desencadenador de solicitud de extracción, especifique las ramificaciones *en* las que va a realizar la inserción, es decir, las ramificaciones de *destino*. Se iniciará una ejecución de flujo de trabajo por cada ramificación coincidente, utilizando el archivo de definición del flujo de trabajo y los archivos de origen de la ramificación de **origen** (*no* de la ramificación coincidente).

     Ejemplos: `main.*`, `mainline`, `v1\-.*` (busca coincidencias con las ramificaciones que comiencen por `v1-`)
   + Para un desencadenador de programación, especifique las ramificaciones que contengan los archivos que quiera que utilice la ejecución programada. Se iniciará una ejecución de flujo de trabajo por cada ramificación coincidente, utilizando el archivo de definición del flujo de trabajo y los archivos de origen en la ramificación coincidente.

     Ejemplos: `main.*`, `version\-1\.0`
**nota**  
Si *no* especifica ninguna ramificación, el activador supervisa todas las ramificaciones del repositorio de código fuente e iniciará una ejecución de flujo de trabajo con el archivo de definición del flujo de trabajo y los archivos de código fuente en:  
La ramificación *en* la que realiza la inserción (para desencadenadores de inserción). Para obtener más información, consulte [Ejemplo: Desencadenador de inserción de código sencillo](workflows-add-trigger-examples.md#workflows-add-trigger-examples-push-simple).
La ramificación *desde* la que realiza la extracción (para desencadenadores de solicitudes de extracción). Para obtener más información, consulte [Ejemplo: Desencadenador de solicitud de extracción sencillo](workflows-add-trigger-examples.md#workflows-add-trigger-examples-pull-simple).
Todas las ramificaciones (para desencadenadores de programación). Se iniciará una ejecución de flujo de trabajo por cada ramificación del repositorio de código fuente. Para obtener más información, consulte [Ejemplo: Desencadenador de programación sencillo](workflows-add-trigger-examples.md#workflows-add-trigger-examples-schedule-simple).

   Para obtener más información acerca de las ramificaciones y los desencadenadores, consulte [Directrices de uso para activadores y ramificaciones](workflows-add-trigger-considerations.md).

   Para obtener más ejemplos, consulte [Ejemplos: Desencadenadores en flujos de trabajo](workflows-add-trigger-examples.md).

    **Archivos cambiados** 

   Este campo solo aparece si ha seleccionado el tipo de desencadenador **Inserción** o **Solicitud de extracción**.

   Especifica los archivos o carpetas del repositorio de código fuente que supervisa el desencadenador para saber cuándo iniciar la ejecución de un flujo de trabajo. Puede utilizar expresiones regulares para hacer coincidir los nombres o las rutas de los archivos.

   Para ver ejemplos, consulte [Ejemplos: Desencadenadores en flujos de trabajo](workflows-add-trigger-examples.md).

1. (Opcional) Seleccione **Validar** para validar el código de YAML del flujo de trabajo antes de confirmarlo.

1. Seleccione **Confirmar**, introduzca un mensaje de confirmación y vuelva a seleccionar **Confirmar**.

------
#### [ YAML ]

**Adición de un desencadenador (editor de YAML)**

1. Abre la CodeCatalyst consola en [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Elija el proyecto.

1. En el panel de navegación, elija **CI/CD** y, a continuación, elija **Flujos de trabajo**.

1. Elija el nombre del flujo de trabajo. Puede filtrar por el nombre del repositorio de código fuente o la ramificación donde esté definido el flujo de trabajo, o bien por el nombre o el estado del flujo de trabajo.

1. Elija **Edit (Edición de)**.

1. Elija **YAML**.

1. Añada una sección `Triggers` y las propiedades subyacentes utilizando el siguiente ejemplo como guía. Para obtener más información, consulte [Triggers](workflow-reference.md#triggers-reference) en la [Definición de flujo de trabajo en YAML](workflow-reference.md).

   Un desencadenador de inserción de código podría tener este aspecto:

   ```
   Triggers:
     - Type: PUSH
       Branches:
         - main
   ```

   Un desencadenador de solicitud de extracción podría tener este aspecto:

   ```
   Triggers:
     - Type: PULLREQUEST
       Branches:
         - main.*
       Events: 
         - OPEN
         - REVISION
         - CLOSED
   ```

   Un desencadenador de programación podría tener este aspecto:

   ```
   Triggers:
     - Type: SCHEDULE
       Branches:
         - main.*
       # Run the workflow at 1:15 am (UTC+0) every Friday until the end of 2023
       Expression: "15 1 ? * FRI 2022-2023"
   ```

   Para ver más ejemplos de expresiones cron que puede utilizar en la propiedad `Expression`, consulte [Expression](workflow-reference.md#workflow.triggers.expression).

   Para ver más ejemplos de desencadenadores de inserción, solicitud de extracción y programación, consulte [Ejemplos: Desencadenadores en flujos de trabajo](workflows-add-trigger-examples.md).

1. (Opcional) Seleccione **Validar** para validar el código de YAML del flujo de trabajo antes de confirmarlo.

1. Seleccione **Confirmar**, introduzca un mensaje de confirmación y vuelva a seleccionar **Confirmar**.

------