Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Integra con Cloud Build

En esta página, se describe cómo configurar Cloud Build para almacenar artefactos compilados en un repositorio de Artifact Registry.

Antes de comenzar

  1. Si el repositorio de destino no existe, crea un repositorio nuevo.
  2. La cuenta de servicio predeterminada de Cloud Build tiene permisos para subir y descargar de los repositorios en el mismo proyecto. Si Cloud Build está en un proyecto diferente al de tus repositorios, debes otorgar permisos a la cuenta de servicio de Cloud Build en el proyecto con los repositorios.

Configura una compilación de Docker

Después de otorgar permisos al repositorio de destino, estás listo para configurar Docker a fin de autenticar y enviar un paquete al repositorio. Se recomienda la integración mediante la cuenta de servicio de Cloud Build.

Para configurar Docker:

  1. Configura la autenticación para Docker.

  2. En tu archivo de configuración de compilación, agrega el paso para compilar y enviar las imágenes.

    En el siguiente ejemplo, se usan los siguientes valores para una imagen que se encuentra en el mismo directorio que el archivo de configuración de compilación:

    • La ubicación del repositorio us-central1
    • El ID del proyecto de la compilación, que se resuelve con la sustitución predeterminada $PROJECT_ID
    • El nombre del repositorio my-repo
    steps:
    - name: 'gcr.io/cloud-builders/docker'
      args: [ 'build', '-t', 'us-central1-docker.pkg.dev/$PROJECT_ID/${_REPOSITORY}/${_IMAGE}', '.' ]
    images:
    - 'us-central1-docker.pkg.dev/$PROJECT_ID/${_REPOSITORY}/${_IMAGE}'
    

    Las variables ${_REPOSITORY} y ${_IMAGE} se usan para el nombre del repositorio y el nombre de la imagen en el repositorio, de forma que se puedan reemplazar en el momento de la compilación mediante sustituciones personalizadas de Cloud Build.

    Este enfoque es útil si deseas usar el mismo archivo de configuración de compilación a fin de enviar imágenes a repositorios para entornos diferentes, como de pruebas, de etapa de pruebas o de producción.

    Por ejemplo, este comando sustituiría my-repo por el nombre del repositorio y my-image por el nombre de la imagen.

    gcloud builds submit --config=cloudbuild.yaml \
      --substitutions=_REPOSITORY="my-repo",_IMAGE="my-image" .
    

Configura una compilación de Maven

Después de otorgar permisos al repositorio de destino, estarás listo para configurar Maven a fin de autenticar y enviar un paquete al repositorio. Se recomienda la integración mediante la cuenta de servicio de Cloud Build.

Para configurar Maven, haz lo siguiente:

  1. Configura la autenticación para Maven. Asegúrate de especificar el proyecto de destino y el repositorio correctos en tu archivo pom.xml.

  2. En el archivo de configuración de compilación de Cloud Build, agrega el paso para subir el paquete con Maven:

    steps:
    - name: gcr.io/cloud-builders/mvn
      args: ['deploy']
    

Configura una compilación de la Administración de socios de red

Después de otorgar permisos al repositorio de destino, estás listo para configurar la Administración de socios de red a fin de autenticarse y enviar un paquete al repositorio. Se recomienda la integración mediante la cuenta de servicio de Cloud Build.

Para configurar la Administración de socios de red, haz lo siguiente:

  1. Configura la autenticación para la Administración de socios de red. Asegúrate de especificar el proyecto de destino y el repositorio correctos en tu archivo .npmrc.

  2. Coloca el archivo .npmrc en el mismo directorio que tu archivo de configuración de compilación de Cloud Build, de forma que Cloud Build pueda encontrar tu configuración de autenticación.

  3. En tu archivo de configuración de compilación, agrega el paso para subir el paquete al repositorio.

    steps:
    - name: gcr.io/cloud-builders/npm
      args: ['publish', ${_PACKAGE}]
    

    La variable ${_PACKAGE} representa el paquete. Reemplazas esta sustitución personalizada de Cloud Build en el tiempo de compilación por la ubicación del paquete, la carpeta o un archivo comprimido comprimido en formato gzip que contiene package.json y los demás archivos de la.

    Por ejemplo, este comando sube un paquete en un directorio llamado src que se encuentra en el mismo directorio que el archivo .npmrc y el archivo de configuración de compilación.

    gcloud builds submit --config=cloudbuild.yaml --substitutions=_PACKAGE="src" .