View a markdown version of this page

Ejemplo 2: Cree una canalización de Amazon S3 con AWS CloudFormation - 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.

Ejemplo 2: Cree una canalización de Amazon S3 con AWS CloudFormation

En este tutorial se muestra cómo usar la AWS CloudFormation consola para crear una infraestructura que incluya una canalización conectada a un bucket de origen de Amazon S3. En este tutorial, utilizará el archivo de plantilla de ejemplo que se proporciona para crear su pila de recursos, que incluye el bucket de origen, el almacén de artefactos, la canalización y los recursos de detección de cambios, como las reglas y el registro de Amazon CloudWatch Events. CloudTrail Después de crear tu pila de recursos AWS CloudFormation, puedes ver tu canalización en la consola. AWS CodePipeline La canalización consta de dos etapas: una etapa de origen de Amazon S3 y una etapa de CodeDeploy implementación.

Requisitos previos:

Debe disponer de los siguientes recursos para utilizarlos con la plantilla de AWS CloudFormation muestra:

  • Debe haber creado las instancias de Amazon EC2, donde instaló el CodeDeploy agente en las instancias. Debe haber creado una CodeDeploy aplicación y un grupo de implementación. Utilice Amazon EC2 y CodeDeploy los recursos en Tutorial: Crear una canalización simple (CodeCommit repositorio) los que creó.

  • Elija los siguientes enlaces para descargar los archivos de AWS CloudFormation plantilla de muestra para crear una canalización con una fuente de Amazon S3:

  • Descarga la aplicación de ejemplo desde SampleApp _ Linux.zip.

    Guarde el archivo .zip en su equipo local. Debe cargar el archivo .zip una vez que se haya creado la pila.

Crea tu canalización en AWS CloudFormation
  1. Abre la AWS CloudFormation consola y elige Create Stack. Elija Con nuevos recursos (estándar).

  2. En Elegir una plantilla, elija Cargar una plantilla. Seleccione Elegir un archivo y luego seleccione el archivo de plantilla desde el equipo local. Elija Siguiente.

  3. En Stack Name (Nombre de pila), escriba el nombre de la canalización. Se muestran los parámetros especificados en la plantilla de muestra. Introduzca los siguientes parámetros:

    1. En ApplicationName, introduce el nombre de tu CodeDeploy aplicación. Puede reemplazar el nombre predeterminado DemoApplication.

    2. En BetaFleet, introduzca el nombre de su grupo de CodeDeploy implementación. Puede reemplazar el nombre predeterminado DemoFleet.

    3. En SourceObjectKey, introduzcaSampleApp_Linux.zip. Puede cargar este archivo en el bucket después de que la plantilla cree el bucket y la canalización.

  4. Elija Siguiente. Acepte los valores predeterminados en la siguiente página y, a continuación, elija Next (Siguiente).

  5. En Capacidades, seleccione Reconozco que eso AWS CloudFormation podría crear recursos de IAM y, a continuación, elija Create stack.

  6. Una vez creada la pila, consulte la lista de eventos para comprobar si hay errores.

    Solución de problemas

    El usuario de IAM que está creando la canalización AWS CloudFormation puede necesitar permisos adicionales para crear recursos para la canalización. La política exige los siguientes permisos para poder crear los recursos de Amazon CloudWatch Events necesarios para la canalización de Amazon S3: AWS CloudFormation

    { "Effect": "Allow", "Action": [ "events:PutRule", "events:PutEvents", "events:PutTargets", "events:DeleteRule", "events:RemoveTargets", "events:DescribeRule" ], "Resource": "resource_ARN" }
  7. En CloudFormation la pestaña Recursos de su pila, consulte los recursos que se crearon para su pila.

    nota

    Para ver la canalización que se creó, busque la columna ID lógico en la pestaña Recursos para su pila en CloudFormation. Anote el nombre de la canalización en la columna ID físico. En CodePipeline, puedes ver la canalización con el mismo identificador físico (nombre de la canalización) en la región en la que creaste tu pila.

    Elija el bucket de S3 con una etiqueta sourcebucket en el nombre, como s3-cfn-codepipeline-sourcebucket-y04EXAMPLE.. No elija el bucket del artefacto de la canalización.

    El bucket de origen está vacío porque CloudFormation ha creado recientemente el recurso. Abra la consola de Amazon S3 y localice su bucket de sourcebucket. Elija Upload (Cargar) y siga las instrucciones para cargar el archivo .zip SampleApp_Linux.zip.

    nota

    Cuando Amazon S3 es el proveedor de origen de la canalización, debe cargar en el bucket todos los archivos de origen empaquetados como un solo archivo .zip. De lo contrario, la acción de origen dará error.

  8. Inicia sesión en Consola de administración de AWS y abre la CodePipeline consola en https://console.aws.amazon.com/codepipeline/.

    En Canalizaciones, elija la canalización y luego Ver. El diagrama muestra las etapas de código fuente e implementación de la canalización.

  9. Complete los pasos del siguiente procedimiento para crear sus recursos de AWS CloudTrail .

Crea tu AWS CloudTrail recursos en AWS CloudFormation
  1. Abre la AWS CloudFormation consola y elige Create Stack.

  2. En Elegir una plantilla, elija Subir una plantilla en Amazon S3. Elija Examinar y, a continuación, seleccione el archivo de plantilla para los AWS CloudTrail recursos de su equipo local. Elija Siguiente.

  3. En Stack name (Nombre de pila), escriba un nombre para la pila de recursos. Se muestran los parámetros especificados en la plantilla de muestra. Introduzca los siguientes parámetros:

    1. En SourceObjectKey, acepte el valor predeterminado para el archivo zip de la aplicación de ejemplo.

  4. Elija Siguiente. Acepte los valores predeterminados en la siguiente página y, a continuación, elija Next (Siguiente).

  5. En Capacidades, seleccione Reconozco que AWS CloudFormation podría crear recursos de IAM y, a continuación, elija Crear.

  6. Una vez creada la pila, consulte la lista de eventos para comprobar si hay errores.

    La política exige los siguientes permisos para poder crear los AWS CloudFormation CloudTrail recursos necesarios para la canalización de Amazon S3:

    { "Effect": "Allow", "Action": [ "cloudtrail:CreateTrail", "cloudtrail:DeleteTrail", "cloudtrail:StartLogging", "cloudtrail:StopLogging", "cloudtrail:PutEventSelectors" ], "Resource": "resource_ARN" }
  7. Inicie sesión en Consola de administración de AWS y abra la CodePipeline consola en https://console.aws.amazon.com/codepipeline/.

    En Canalizaciones, elija la canalización y luego Ver. El diagrama muestra las etapas de código fuente e implementación de la canalización.

  8. En el bucket de origen, confirme y envíe un cambio. Sus recursos de detección de cambios recogen el cambio y se inicia la canalización.