Tutorial: creación de una canalización que ejecute comandos mediante computación (tipo V2) - AWS CodePipeline

Tutorial: creación de una canalización que ejecute comandos mediante computación (tipo V2)

En este tutorial, va a configurar una canalización que ejecutará constantemente comandos de compilación mediante la acción de Comandos en una etapa de compilación. Para obtener más información acerca de la acción de Comandos, consulte Referencia de la acción de Comandos.

importante

Como parte de la creación de una canalización, CodePipeline utilizará un bucket de artefactos de S3 proporcionado por el cliente para los artefactos. (Es diferente del bucket que se usa para una acción de origen de S3). Si el bucket de artefactos de S3 se encuentra en una cuenta diferente a la cuenta de su canalización, asegúrese de que el bucket de artefactos de S3 pertenezca a Cuentas de AWS que sean seguras y fiables.

Requisitos previos

Debe disponer de lo siguiente:

Paso 1: creación e inserción de archivos de fuente en el repositorio de GitHub

En esta sección, debe crear e insertar los archivos de fuente al repositorio que utiliza la canalización para la etapa de origen. Para este ejemplo, se produce y se inserta lo siguiente:

  • Un archivo README.txt.

Para crear archivos de fuente
  1. Cree un archivo con el siguiente texto:

    Sample readme file
  2. Guarde el archivo como README.txt.

Para insertar archivos al repositorio de GitHub
  1. Envíe o cargue los archivos en el repositorio de . Estos archivos son el artefacto de código fuente creado por el asistente Create Pipeline (Crear canalización) para la acción de implementación en AWS CodePipeline. Sus archivos deberían ser parecidos a estos en su directorio local:

    README.txt
  2. Para utilizar la línea de comandos de Git desde un repositorio clonado en el equipo local:

    1. Ejecute el siguiente comando para preparar todos los archivos de una vez:

      git add -A
    2. Ejecute el siguiente comando para confirmar los archivos con un mensaje de confirmación.

      git commit -m "Added source files"
    3. Ejecute el siguiente comando para enviar los archivos de su repositorio local al repositorio de :

      git push

Paso 2: Crear la canalización

En esta sección, debe crear una canalización con las siguientes acciones:

  • Una etapa de origen con una acción de GitHub (mediante la aplicación de GitHub) para el repositorio donde se almacenan los archivos de origen.

  • Una etapa de compilación con la acción de Comandos.

Para crear una canalización con el asistente
  1. Inicie sesión en la Consola de administración de AWS y abra la consola de CodePipeline en http://console.aws.amazon.com/codesuite/codepipeline/home.

  2. En la página Bienvenido, Introducción o Canalizaciones, elija Crear canalización.

  3. En la página Paso 1: elección de la opción de creación, en Opciones de creación, seleccione la opción Crear una canalización personalizada. Elija Siguiente.

  4. En Paso 2: elegir la configuración de la canalización, en Nombre de la canalización, escriba MyCommandsPipeline.

  5. CodePipeline proporciona canalizaciones de tipo V1 y V2, que difieren en características y precio. El tipo V2 es el único tipo que puede elegir en la consola. Para obtener más información, consulte Tipos de canalización. Para obtener más información acerca de los precios de CodePipeline, consulte Precios.

  6. En Rol de servicio, elija Nuevo rol de servicio para permitir que CodePipeline cree un rol de servicio en IAM.

    nota

    Si utiliza un rol de servicio existente, para utilizar la acción de Comandos tendrá que agregar los siguientes permisos para el rol de servicio. Reduzca los permisos al nivel de recursos de la canalización a través de los permisos basados en recursos de la declaración de la política del rol de servicio. Para obtener más información, consulte la política de ejemplo en Permisos para las políticas de roles de servicio.

    • logs:CreateLogGroup

    • logs:CreateLogStream

    • logs:PutLogEvents

  7. En Advanced settings (Configuración avanzada), deje los valores predeterminados y elija Next (Siguiente).

  8. En la página Paso 3: agregar la etapa de origen, agregue una etapa de origen:

    1. En Proveedor de origen, elija GitHub (mediante la aplicación de GitHub).

    2. En Conexión, seleccione una conexión existente o cree una nueva. Para crear o administrar una conexión para su acción de origen de GitHub, consulte Conexiones de GitHub.

    3. En Nombre del repositorio, elija el nombre de su repositorio de GitHub.com.

    4. En la Ramificación predeterminada, elige la ramificación que quiere especificar cuando la canalización se inicie manualmente o con un evento de origen que no sea una etiqueta de Git. Si la fuente del cambio no es el desencadenador o si la ejecución de una canalización se inició manualmente, el cambio utilizado será la confirmación de HEAD desde la ramificación predeterminada. Opcionalmente, también puede especificar webhooks con filtrado (desencadenadores). Para obtener más información, consulte Automatización del inicio de las canalizaciones mediante desencadenadores y filtrado.

    Elija Siguiente.

  9. En Paso 4: agregar la etapa de compilación, seleccione Comandos.

    nota

    Si ejecuta la acción de Comandos, se le cobrarán cargos por separado en AWS CodeBuild.

    Ejecute los comandos siguientes:

    ls echo hello world cat README.txt echo pipeline Execution Id is #{codepipeline.PipelineExecutionId}

    Elija Siguiente.

    Página Paso 4: agregación de la etapa de compilación para una nueva canalización con la acción de comandos
  10. En Paso 5: agregación de la etapa de prueba, elija Omitir la etapa de prueba y, a continuación, acepte el mensaje de advertencia eligiendo Omitir una vez más.

    Elija Siguiente.

  11. En Paso 6: agregación de la etapa de implementación, elija Omitir la etapa de implementación y, a continuación, acepte el mensaje de advertencia eligiendo Omitir una vez más.

    Elija Siguiente.

  12. En Step 7: Review, revise la información y después elija Create pipeline.

  13. Como último paso para crear la acción, agregue una variable de entorno a la acción que dé como resultado una variable de salida para la acción. En la acción de Comandos, elija Editar. En la pantalla Editar, especifique un espacio de nombres de variables para la acción introduciendo compute en el campo Espacio de nombres de variables.

    Agregue la variable de salida de CodeBuild AWS_Default_Region y, a continuación, elija Agregar variable.

    La página Editar de la acción de Comandos

Paso 3: ejecución de una canalización y verificación de los comandos de compilación

Publique algún cambio para ejecutar su canalización. Compruebe que los comandos de compilación se hayan ejecutado; para ello, consulte el historial de ejecución, los registros de compilación y las variables de salida.

Para ver los registros de acciones y las variables de salida
  1. Después de que la canalización se ejecute correctamente, podrá ver los registros y el resultado de la acción.

  2. Para ver las variables de salida de la acción, seleccione Historial y, a continuación, seleccione Línea temporal.

    Vea la variable de salida que se agregó a la acción. El resultado de la acción de Comandos muestra la variable de salida resuelta en la región de la acción.

    Resultado de la acción de Comandos que muestra la variable de salida resuelta en la región de la acción
  3. Para ver los registros de la acción, seleccione Ver detalles de la acción de Comandos realizada correctamente. Vea los registros de la acción de Comandos.

    Ejemplos de registros de la acción de Comandos