Usar AWS CodePipeline con AWS CodeBuild para probar el código y ejecutar compilaciones - AWS CodeBuild

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.

Usar AWS CodePipeline con AWS CodeBuild para probar el código y ejecutar compilaciones

Puede automatizar el proceso de lanzamiento utilizando AWS CodePipeline para probar el código y ejecutar las compilaciones con AWS CodeBuild.

En la siguiente tabla se muestran las tareas y los métodos disponibles que se pueden realizar. El uso de los SDK de AWS para realizar estas tareas queda fuera del ámbito de este tema.

Tarea Enfoques disponibles Enfoques descritos en este tema
Cree una canalización de entrega continua (CD) con CodePipeline que automatiza las compilaciones con CodeBuild
  • CodePipeline consola

  • AWS CLI

  • SDK de AWS

  • Usar la consola de CodePipeline

  • Usar AWS CLI

  • Puede adaptar la información de este tema para utilizar los SDK de AWS. Para obtener más información, consulte lacreate-pipelinedocumentación de acciones para su lenguaje de programación en laSDK desección deHerramientas para Amazon Web Serviceso consulteCreatePipelineen laAWS CodePipelineReferencia de la API.

Añadir la automatización de pruebas y compilaciones con CodeBuild a una canalización existente en CodePipeline
  • CodePipeline consola

  • AWS CLI

  • SDK de AWS

Requisitos previos

  1. Responda a las preguntas de Planificación de una compilación.

  2. Si utiliza un usuario de IAM para acceder CodePipeline en lugar de unAWScuenta root o un usuario de IAM administrador, adjunte la política administrada denominadaAWSCodePipelineFullAccessal usuario (o al grupo de IAM al que pertenece el usuario). No se recomienda usar una cuenta raíz de AWS. Esta política concede al usuario permiso para crear la canalización en CodePipeline. Para obtener más información, consulteAsocie políticas administradasen laIAM User Guide.

    nota

    La entidad de IAM que asocia la política al usuario (o al grupo de IAM al que pertenece el usuario) debe tener permiso en IAM para asociar políticas. Para obtener más información, consulteDelegación de permisos para administrar usuarios, grupos y credenciales de IAMen laIAM User Guide.

  3. Creación de un CodePipeline servicio de, si aún no dispone de uno en suAWSaccount. CodePipeline usa este rol de servicio para interactuar con otrosAWSservicios, incluidosAWS CodeBuild, en su nombre. Por ejemplo, para utilizar laAWS CLIpara crear un CodePipeline función de servicio, ejecute IAMcreate-rolecomando:

    Para Linux, macOS o Unix:

    aws iam create-role --role-name AWS-CodePipeline-CodeBuild-Service-Role --assume-role-policy-document '{"Version":"2012-10-17","Statement":{"Effect":"Allow","Principal":{"Service":"codepipeline.amazonaws.com"},"Action":"sts:AssumeRole"}}'

    Para Windows:

    aws iam create-role --role-name AWS-CodePipeline-CodeBuild-Service-Role --assume-role-policy-document "{\"Version\":\"2012-10-17\",\"Statement\":{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"codepipeline.amazonaws.com\"},\"Action\":\"sts:AssumeRole\"}}"
    nota

    La entidad de IAM que crea este CodePipeline el rol de servicio de debe tener permiso en IAM para crear roles de servicio.

  4. Después de crear un CodePipeline rol de servicio de o identificar uno existente, debe agregar el rol de servicio CodePipeline política de rol de servicio al rol de servicio, como se describe enRevise la predeterminada CodePipeline política de rol de servicioen laAWS CodePipelineGuía del usuario de, si aún no forma parte de la política de la función.

    nota

    La entidad de IAM que agrega esto CodePipeline la política de roles de servicio de debe tener permiso en IAM para añadir políticas de roles de servicio a roles de servicio.

  5. Crear y cargar el código fuente de un tipo de repositorio compatible con CodeBuild y CodePipeline, como, por ejemplo, CodeCommit, Amazon S3, Bitbucket o GitHub. El código fuente debe contener un archivo buildspec, pero puede declarar uno cuando defina un proyecto de compilación más adelante en este tema. Para obtener más información, consulte la Referencia de la especificación de compilación.

    importante

    Si tiene previsto utilizar la canalización para implementar el código fuente compilado, el artefacto de salida de la compilación debe ser compatible con el sistema de implementación que utilice.