Ejemplo de versión de origen con AWS CodeBuild - 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.

Ejemplo de versión de origen con AWS CodeBuild

En este ejemplo se muestra cómo especificar una versión de su origen con un formato que no sea un ID de confirmación (también conocido como SHA de confirmación). Puede especificar la versión del origen de las siguientes formas:

  • En el caso de un proveedor de origen de Amazon S3, utilice el ID de versión del objeto que representa el archivo ZIP de entrada de compilación.

  • Para CodeCommit, Bitbucket, GitHub y GitHub Enterprise Server, utilice una de las siguientes opciones:

    • Solicitud de extracción como referencia de solicitud de extracción (por ejemplo, refs/pull/1/head).

    • Ramificación como nombre de ramificación.

    • ID de confirmación.

    • Etiqueta.

    • Referencia e ID de confirmación. La referencia puede ser uno de los siguientes elementos:

      • Una etiqueta (por ejemplo, refs/tags/mytagv1.0^{full-commit-SHA}).

      • Una ramificación (por ejemplo, refs/heads/mydevbranch^{full-commit-SHA}).

      • Una solicitud de extracción (por ejemplo, refs/pull/1/head^{full-commit-SHA}).

nota

Puede especificar la versión de un origen de solicitud de extracción solo si el repositorio está GitHub o GitHub Enterprise Server.

Si utiliza una referencia y un ID de confirmación para especificar una versión, la fase DOWNLOAD_SOURCE de la compilación será más rápida que si proporciona solo la versión. Esto se debe a que cuando añades una referencia, CodeBuild no necesita descargar todo el repositorio para encontrar la confirmación.

  • Puede especificar una versión de origen con solo un ID de confirmación, como por ejemplo 12345678901234567890123467890123456789. Si lo hace, CodeBuild debe descargar todo el repositorio para encontrar la versión.

  • Puede especificar una versión de origen con una referencia y un ID de confirmación en este formato: refs/heads/branchname^{full-commit-SHA} (por ejemplo, refs/heads/main^{12345678901234567890123467890123456789}). Si lo hace, CodeBuild descarga solo la ramificación especificada para encontrar la versión.

nota

Para acelerar elDOWNLOAD_SOURCEfase de tu compilación, también puedes configurarProfundidad de clon de Gita un número bajo. CodeBuild descarga menos versiones de tu repositorio.

Para especificar un GitHub versión del repositorio con un ID de confirmación

  1. Abra el iconoAWS CodeBuildConsola dehttps://console.aws.amazon.com/codesuite/codebuild/home.

  2. Cree un proyecto de compilación. Para obtener más información, consulte Creación de un proyecto de compilación (consola) y Ejecutar una compilación (consola). Deje todas las opciones con sus valores predeterminados, excepto las siguientes opciones:

    • En Source (Código fuente):

      • En Source provider (Proveedor de código fuente), elija GitHub. Si no está conectado a GitHub, siga las instrucciones para conectarse.

      • En Repository (Repositorio), elija Public repository (Repositorio público).

      • En URL de repositorio, especifique https://github.com/aws/aws-sdk-ruby.git

    • En Environment (Entorno):

      • En Environment image (Imagen de entorno), elija Managed image (Imagen administrada).

      • En Operating system (Sistema operativo), elija Amazon Linux 2.

      • En Runtime(s) (Tiempo de ejecución), elija Standard (Estándar).

      • ParaImagen, eligeaws/codebuild/amazonlinux2-x86_64-standard:3.0.

  3. En Build specifications (Especificaciones de compilación), elija Insert build commands (Insertar comandos de compilación) y, a continuación, elija Switch to editor (Cambiar a editor).

  4. En Build commands (Comandos de compilación), reemplace el texto del marcador de posición por lo siguiente:

    version: 0.2 phases: install: runtime-versions: ruby: 2.6 build: commands: - echo $CODEBUILD_RESOLVED_SOURCE_VERSION

    La sección runtime-versions es obligatoria si utiliza la imagen estándar de Ubuntu 2.0. Aquí, se especifica el tiempo de ejecución de la versión de Ruby 2.6, pero puede usar cualquier tiempo de ejecución. El comando echo muestra la versión del código de origen almacenado en la variable de entorno de CODEBUILD_RESOLVED_SOURCE_VERSION.

  5. En Build configuration (Configuración de la compilación), acepte los valores predeterminados y elija Start build (Comenzar compilación).

  6. En Versión de origen, especifique 046e8b67481d53bdc86c3f6affdd5d1afae6d369. Este es el SHA de una confirmación en el repositorio https://github.com/aws/aws-sdk-ruby.git.

  7. Seleccione Start build.

  8. Cuando se complete la compilación, debería ver lo siguiente:

    • En la pestaña Registros de compilación, la versión del origen de proyecto que se ha utilizado. A continuación se muestra un ejemplo.

      [Container] Date Time Running command echo $CODEBUILD_RESOLVED_SOURCE_VERSION 046e8b67481d53bdc86c3f6affdd5d1afae6d369 [Container] Date Time Phase complete: BUILD State: SUCCEEDED
    • En la pestaña Variables de entorno, Versión de origen resuelta coincide con el ID de confirmación utilizado para crear la compilación.

    • En la pestaña Detalles de fase, la duración de la fase DOWNLOAD_SOURCE.

Estos pasos muestran cómo crear una compilación con la misma versión del origen. Esta vez, la versión del origen se especifica mediante una referencia con el ID de confirmación.

Para especificar un GitHub versión del repositorio con un ID de confirmación y una referencia

  1. En el panel de navegación izquierdo, elija Proyectos de compilación y, a continuación, elija el proyecto que creó anteriormente.

  2. Seleccione Start build.

  3. En Versión de origen, especifique refs/heads/main^{046e8b67481d53bdc86c3f6affdd5d1afae6d369}. Es el mismo ID de confirmación y una referencia a una ramificación en el formato refs/heads/branchname^{full-commit-SHA}.

  4. Seleccione Start build.

  5. Cuando se complete la compilación, debería ver lo siguiente:

    • En la pestaña Registros de compilación, la versión del origen de proyecto que se ha utilizado. A continuación se muestra un ejemplo.

      [Container] Date Time Running command echo $CODEBUILD_RESOLVED_SOURCE_VERSION 046e8b67481d53bdc86c3f6affdd5d1afae6d369 [Container] Date Time Phase complete: BUILD State: SUCCEEDED
    • En la pestaña Variables de entorno, Versión de origen resuelta coincide con el ID de confirmación utilizado para crear la compilación.

    • En la pestaña Detalles de fase, la duración de la fase DOWNLOAD_SOURCE debe ser inferior a la duración cuando utilizó solo el ID de confirmación para especificar la versión del origen.