Crear una canalización que use CodeBuild (consola de CodePipeline) - 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.

Crear una canalización que use CodeBuild (consola de CodePipeline)

Utilice el siguiente procedimiento para crear una canalización que use CodeBuild para compilar e implementar el código fuente.

Para crear una canalización que solo pruebe el código fuente:

Para utilizar el asistente para crear canalizaciones de CodePipeline para crear una canalización que use CodeBuild

  1. Inicie sesión en AWS Management Console utilizando:

    • Su cuenta raíz de AWS. No se recomienda. Para obtener más información, consulteEl usuario raíz de la cuenta deen laIAM User Guide.

    • Un usuario de IAM administrador en suAWSaccount. Para obtener más información, consulte Creación del primer grupo y usuario administrador de IAM en la Guía del usuario de IAM.

    • Un usuario de IAM en suAWScuenta con permiso para utilizar el siguiente conjunto mínimo de acciones:

      codepipeline:* iam:ListRoles iam:PassRole s3:CreateBucket s3:GetBucketPolicy s3:GetObject s3:ListAllMyBuckets s3:ListBucket s3:PutBucketPolicy codecommit:ListBranches codecommit:ListRepositories codedeploy:GetApplication codedeploy:GetDeploymentGroup codedeploy:ListApplications codedeploy:ListDeploymentGroups elasticbeanstalk:DescribeApplications elasticbeanstalk:DescribeEnvironments lambda:GetFunctionConfiguration lambda:ListFunctions opsworks:DescribeStacks opsworks:DescribeApps opsworks:DescribeLayers
  2. Abra el iconoAWS CodePipelineconsola enhttps://console.aws.amazon.com/codesuite/codepipeline/home.

  3. En el navegadorAWSSelector de región, elija elAWSRegión en la que tu proyecto de compilaciónAWSse encuentran los recursos. Este debe ser unAWSRegión en la que se admite CodeBuild. Para obtener más información, consulte AWS CodeBuild en Referencia general de Amazon Web Services.

  4. Cree una canalización. Si aparece una página de información de CodePipeline, seleccioneCrear canalización. Si aparece la página Pipelines (Canalizaciones), seleccione Create pipeline (Crear canalización).

  5. En la páginaPaso 1: Elija la configuración de canalización, paraNombre de canalización, introduzca un nombre para la canalización (por ejemplo,CodeBuildDemoPipeline). Si elige otro nombre, asegúrese de utilizarlo durante todo este procedimiento.

  6. En Role name (Nombre de la función), realice una de las operaciones siguientes:

    Seleccione New service role (Nueva función de servicio) y, en Role Name (Nombre de la función), especifique un nombre para la nueva función de servicio.

    ElegirRol de servicio existentey, a continuación, seleccione la función de servicio CodePipeline que creó o identificó en los requisitos previos de este tema.

  7. En Artifact store (Almacén de artefactos), haga lo siguiente:

    • ElegirUbicación predeterminadapara utilizar el almacén de artefactos predeterminado (por ejemplo, el bucket de artefactos de S3 designado como predeterminado) con la canalización en laAWSRegión que ha seleccionado para su canalización.

    • ElegirUbicación personalizadaSi ya dispone de un almacén de artefactos existente como, por ejemplo, un bucket de artefactos de S3, en el mismoAWSRegión como canalización.

    nota

    Esto no es el bucket de código fuente del código fuente de la canalización. Este es el almacén de artefactos de la canalización. Se necesita un almacén de artefactos diferente (por ejemplo, un bucket de S3) para cada canalización en la mismaAWSRegión como canalización.

  8. Elija Next (Siguiente).

  9. En la páginaPaso 2: Agregar fase de origen, paraProveedor de origen, lleve a cabo una de las siguientes operaciones:

    • Si el código fuente está almacenado en un bucket de S3, seleccioneAmazon S3. En Bucket, seleccione el bucket de S3 que contiene el código fuente. En S3 object key (Clave de objeto de S3), escriba el nombre del archivo que contiene el código fuente (por ejemplo, file-name.zip). Elija Next (Siguiente).

    • Si el código fuente está almacenado en unAWS CodeCommitrepositorio, elijaCodeCommit. En Repository name, elija el nombre del repositorio que contiene el código fuente. En Branch name (Nombre de la ramificación), elija el nombre de la ramificación que contiene la versión del código fuente que desea compilar. Elija Next (Siguiente).

    • Si el código fuente está almacenado en un repositorio GitHub, elija GitHub. Elija Connect to GitHub y siga las instrucciones para autenticarse con GitHub. En Repository, elija el nombre del repositorio que contiene el código fuente. En Branch (Ramificación), elija el nombre de la ramificación que contiene la versión del código fuente que desea compilar.

    Elija Next (Siguiente).

  10. En la páginaPaso 3: Agregar fase de compilación, paraProveedor de compilación, eligeCodeBuild.

  11. Si ya tiene un proyecto de compilación que desee utilizar, paraNombre de proyecto, seleccione el nombre del proyecto de compilación y vaya al siguiente paso de este procedimiento.

    Si necesita crear un nuevo proyecto de compilación de CodeBuild, siga las instrucciones enCreación de un proyecto de compilación (consola)y vuelva a este procedimiento.

    Si elige un proyecto de compilación existente, debe haber definido ya la configuración del artefacto de salida de la compilación (aunque CodePipeline la invalide). Para obtener más información, consulte Cambiar la configuración de un proyecto de compilación (consola).

    importante

    Si habilita webhooks para un proyecto de CodeBuild y el proyecto se usa como un paso de compilación en CodePipeline, se crearán dos compilaciones idénticas para cada confirmación. Una compilación se activa a través de los webhooks y la otra a través de CodePipeline. Como se factura por compilación, se le cobrarán ambas compilaciones. Por lo tanto, si utiliza CodePipeline, le recomendamos que deshabilite los webhooks en CodeBuild. En la consola de AWS CodeBuild, desactive la casilla Webhook. Para obtener más información, consulte Cambiar la configuración de un proyecto de compilación (consola).

  12. En la páginaPaso 4: Agregar fase de implementación, realice una de las siguientes operaciones:

    • Si no desea implementar el artefacto de salida de la compilación, elija Skip (Omitir) y confirme esta opción cuando se lo soliciten.

    • Si desea implementar el artefacto de salida de la compilación, en Deploy provider (Proveedor de implementación), elija un proveedor de implementación y especifique la configuración cuando se lo soliciten.

    Elija Next (Siguiente).

  13. En la página Review (Revisar), revise las opciones y seleccione Create pipeline (Crear canalización).

  14. Una vez que la canalización se ejecute correctamente, podrá obtener el artefacto de salida de la compilación. Con la canalización mostrada en la consola de CodePipeline, en laConstruiracción, elija la información emergente. Anote el valor de Output artifact (por ejemplo, MyAppBuild).

    nota

    También puede obtener el artefacto de salida de la compilación eligiendo laConstruir artefactosen la página de detalles de compilación de la consola de CodeBuild. Para ir a esta página, omita el resto de los pasos de este procedimiento y consulte Ver detalles de las compilaciones (consola).

  15. Abra la consola de Amazon S3 en https://console.aws.amazon.com/s3.

  16. En la lista de buckets, abra el bucket utilizado por la canalización. El nombre del bucket debe seguir el formato codepipeline-region-ID-random-number. Puede utilizar elAWS CLIpara ejecutar CodePipelineget-pipelinepara obtener el nombre del bucket de, dondemy-pipeline-namees el nombre para mostrar de la canalización:

    aws codepipeline get-pipeline --name my-pipeline-name

    En el resultado, el objeto pipeline contiene un objeto artifactStore, que a su vez contiene un valor location con el nombre del bucket.

  17. Abra la carpeta que tiene el mismo nombre que la canalización (en función de la longitud del nombre de la canalización, el nombre de la carpeta podría aparecer truncado) y después abra la carpeta que tiene el mismo nombre que el valor de Output artifact (Artefacto de salida) que anotó anteriormente.

  18. Extraiga el contenido del archivo . Si hay varios archivos en esa carpeta, extraiga el contenido del archivo con la última marca temporal Last Modified. (Es posible que tenga que asignar al archivo la extensión .zip para que pueda trabajar con él en la utilidad ZIP del sistema). El artefacto de salida de la compilación está en el contenido extraído del archivo.

  19. Si indicó a CodePipeline que implementara el artefacto de salida de la compilación, utilice las instrucciones del proveedor de implementación para obtener el artefacto de salida de la compilación en los destinos de la implementación.