Tutorial: Usa una acción de AWS Step Functions invocación en una canalización - AWS CodePipeline

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.

Tutorial: Usa una acción de AWS Step Functions invocación en una canalización

Se puede utilizar AWS Step Functions para crear y configurar máquinas de estado. En este tutorial, se muestra cómo se agrega una acción de invocación a una canalización que activa las ejecuciones de máquinas de estados desde la canalización.

En este tutorial, va a realizar las siguientes tareas:

  • Cree una máquina de estados estándar en AWS Step Functions.

  • Escribir directamente la entrada JSON de la máquina de estados. También puede cargar el archivo de entrada de la máquina de estados en un bucket de Amazon Simple Storage Service (Amazon S3).

  • Actualizar la canalización agregando la acción de la máquina de estados.

Requisito previo: cree o elija una canalización sencilla

En este tutorial, va a agregar una acción de invocación a una canalización existente. Puede utilizar la canalización que creó en Tutorial: Crear una canalización simple (bucket de S3) o Tutorial: Crear una canalización sencilla (CodeCommitrepositorio).

Va a utilizar una canalización existente con una acción de origen y al menos una estructura de dos etapas, pero no se utilizan artefactos de origen en este ejemplo.

nota

Es posible que tenga que actualizar el rol de servicio que se utiliza en la canalización con otros permisos necesarios para ejecutar esta acción. Para ello, abra la consola AWS Identity and Access Management (IAM), busque el rol y, a continuación, añada los permisos a la política del rol. Para obtener más información, consulte Agregar permisos al rol de servicio de CodePipeline.

Paso 1: Crear la máquina de estados de ejemplo

En la consola de Step Functions, cree una máquina de estados utilizando la plantilla de ejemplo HelloWorld. Para obtener instrucciones, consulte Crea una máquina de estadosen la Guía para desarrolladores de AWS Step Functions .

Paso 2: Agregar una acción de invocación de Step Functions a la canalización

Agregue una acción de invocación de Step Functions a la canalización del siguiente modo:

  1. Inicie sesión en la CodePipeline consola AWS Management Console y ábrala en http://console.aws.amazon.com/codesuite/codepipeline/home.

    Se muestran los nombres de todas las canalizaciones asociadas a tu AWS cuenta.

  2. En Nombre, elija el nombre de la canalización que desea editar. Esto abre una vista detallada de la canalización, que incluye el estado de cada una de las acciones en cada etapa de la canalización.

  3. En la página de detalles de la canalización, elija Edit.

  4. En la segunda etapa de la canalización sencilla, elija Editar la etapa. Elija Eliminar. De este modo, eliminará la segunda etapa, ahora que ya no la necesita.

  5. En la parte inferior del diagrama, seleccione + Add stage (Añadir etapa).

  6. En Nombre de la etapa, escriba un nombre, por ejemplo, Invoke, y elija Agregar la etapa.

  7. Elija + Add action group (Añadir grupo de acciones).

  8. En Nombre de la acción, escriba un nombre; por ejemplo, Invoke.

  9. En Proveedor de acción, elija AWS Step Functions. En el campo Region (Región) conserve el valor predeterminado de la región de la canalización.

  10. En Artefactos de entrada, elija SourceArtifact.

  11. En ARN de máquina de estado, elija el nombre de recurso de Amazon (ARN) de la máquina de estados que creó anteriormente.

  12. (Opcional) En Prefijo de nombre de ejecución, escriba un prefijo para agregarlo al ID de ejecución de la máquina de estados.

  13. En Tipo de entrada, elija Literal.

  14. En Entrada, especifique el JSON de entrada que la máquina de estados del ejemplo HelloWorld espera usar.

    nota

    La entrada a la ejecución de la máquina de estados es diferente del término utilizado CodePipeline para describir los artefactos de entrada para las acciones.

    En este ejemplo, especifique el siguiente JSON:

    {"IsHelloWorldExample": true}
  15. Seleccione Listo.

  16. En la etapa que está editando, elija Listo. En el panel de AWS CodePipeline , elija Save (Guardar) y, a continuación, elija Save (Guardar) cuando aparezca el mensaje de advertencia.

  17. Para enviar los cambios y comenzar una ejecución de la canalización, elija Release change (Publicar modificación) y, a continuación, Release (Publicar).

  18. En la canalización completada, elija AWS Step Functions en la acción de invocación. En la AWS Step Functions consola, consulta el identificador de ejecución de la máquina de estado. El ID indica el nombre de la máquina de estados HelloWorld y el ID de ejecución con el prefijo my-prefix.

    arn:aws:states:us-west-2:account-ID:execution:HelloWorld:my-prefix-0d9a0900-3609-4ebc-925e-83d9618fcca1