Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Crear una canalización que use CodeBuild (AWS CLI)

Modo de enfoque
Crear una canalización que use CodeBuild (AWS CLI) - AWS CodeBuild

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

Para utilizar la AWS CLI para crear una canalización que implemente el código fuente compilado que solo pruebe el código fuente, puede adaptar las instrucciones de Editar una canalización (AWS CLI) y Referencia de estructura de la canalización en la Guía del usuario de AWS CodePipeline.

  1. Cree o identifique un proyecto de compilación en CodeBuild. Para obtener más información, consulte Creación de un proyecto de compilación.

    importante

    El proyecto de compilación debe definir la configuración del artefacto de salida de la compilación (aunque CodePipeline la invalide). Para obtener más información, consulte la descripción de artifacts en Crear un proyecto de compilación (AWS CLI).

  2. Asegúrese de que ha configurado la AWS CLI con la clave de acceso de AWS y la clave de acceso secreta de AWS correspondientes a una de las entidades de IAM descritas en este tema. Para obtener más información, consulte Configuración inicial de la AWS Command Line Interface en la Guía del usuario de AWS Command Line Interface.

  3. Crear un archivo con formato JSON que represente la estructura de la canalización. Asigne al archivo el nombre create-pipeline.json o uno similar. Por ejemplo, esta estructura con formato JSON crea una canalización con una acción de origen que hace referencia a un bucket de entrada de S3 y una acción de compilación que utiliza CodeBuild:

    { "pipeline": { "roleArn": "arn:aws:iam::<account-id>:role/<AWS-CodePipeline-service-role-name>", "stages": [ { "name": "Source", "actions": [ { "inputArtifacts": [], "name": "Source", "actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "S3" }, "outputArtifacts": [ { "name": "MyApp" } ], "configuration": { "S3Bucket": "<bucket-name>", "S3ObjectKey": "<source-code-file-name.zip>" }, "runOrder": 1 } ] }, { "name": "Build", "actions": [ { "inputArtifacts": [ { "name": "MyApp" } ], "name": "Build", "actionTypeId": { "category": "Build", "owner": "AWS", "version": "1", "provider": "CodeBuild" }, "outputArtifacts": [ { "name": "default" } ], "configuration": { "ProjectName": "<build-project-name>" }, "runOrder": 1 } ] } ], "artifactStore": { "type": "S3", "location": "<CodePipeline-internal-bucket-name>" }, "name": "<my-pipeline-name>", "version": 1 } }

    En estos datos con formato JSON:

    • El valor de roleArn debe coincidir con el ARN del rol de servicio de CodeBuild que ha creado o identificado como parte de los requisitos previos.

    • Los valores de S3Bucket y S3ObjectKey en configuration presuponen que el código fuente está almacenado en un bucket de S3. Para obtener información sobre la configuración de otros tipos de repositorios de código fuente, consulte Referencia de la estructura de la canalización de CodePipeline en la Guía del usuario de AWS CodePipeline.

    • El valor de ProjectName es el nombre del proyecto de compilación de CodeBuild que ha creado anteriormente en este procedimiento.

    • El valor de location es el nombre del bucket de S3 que se utiliza en esta canalización. Para obtener más información, consulte este artículo acerca de cómo crear una política para utilizar un bucket de S3 como almacén de artefactos de CodePipeline en la Guía del usuario de AWS CodePipeline.

    • El valor de name es el nombre de esta canalización. Todos los nombres de canalización deben ser únicos en su cuenta.

    Aunque estos datos describen únicamente una acción de origen y una acción de compilación, puede agregar acciones para actividades relacionadas con las pruebas, la implementación del artefacto de salida de la compilación, las llamadas a funciones de AWS Lambda, etc. Para obtener más información, consulte Referencia de la estructura de la canalización de AWS CodePipeline en la Guía del usuario de AWS CodePipeline.

  4. Cambie a la carpeta que contiene el archivo JSON y, a continuación, ejecute el comando create-pipeline de CodePipeline, especificando el nombre de archivo:

    aws codepipeline create-pipeline --cli-input-json file://create-pipeline.json
    nota

    Debe crear la canalización en una región de AWS en la que se admita CodeBuild. Para obtener más información, consulte AWS CodeBuild en la Referencia general de Amazon Web Services.

    Los datos con formato JSON aparecen en la salida y CodePipeline crea la canalización.

  5. Para obtener información sobre el estado de la canalización, ejecute el comando get-pipeline-state de CodePipeline, especificando el nombre de la canalización:

    aws codepipeline get-pipeline-state --name <my-pipeline-name>

    En el resultado, busque información que confirme que la compilación se ha realizado correctamente. Los puntos suspensivos (...) se utilizan para mostrar los datos que se han omitido por motivos de brevedad.

    { ... "stageStates": [ ... { "actionStates": [ { "actionName": "CodeBuild", "latestExecution": { "status": "SUCCEEDED", ... }, ... } ] } ] }

    Si ejecuta este comando demasiado pronto, es posible que no vea ninguna información sobre la acción de compilación. Tal vez tenga que ejecutar este comando varias veces hasta que la canalización termine de ejecutar la acción de compilación.

  6. Una vez que la compilación se realice correctamente, siga estas instrucciones para obtener el artefacto de salida de la compilación. Abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/.

    nota

    También puede obtener el artefacto de salida de la compilación eligiendo el enlace Artefactos de compilación en la página de detalles de la compilación relacionada 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).

  7. 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 obtener el nombre del bucket del archivo create-pipeline.json o puede ejecutar el comando get-pipeline de CodePipeline para obtener el nombre del bucket.

    aws codepipeline get-pipeline --name <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.

  8. Abra la carpeta que coincide con el nombre de la canalización (por ejemplo, <pipeline-name>).

  9. En esa carpeta, abra la carpeta con el nombre default.

  10. 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 una 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.

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.