En esta página, se explica cómo usar Cloud Build para compilar y probar Las aplicaciones basadas en Java almacenan artefactos compilados en un repositorio de Maven en Artifact Registry y genera información de procedencia de las compilaciones.
Antes de comenzar
- Familiarízate con la creación de aplicaciones basadas en Java.
- Familiarízate con Maven
- Deja tu proyecto de Java listo.
- Familiarízate con la escritura de un archivo de configuración de Cloud Build.
- Tener un repositorio de Maven en Artifact Registry Si no tienes uno, crea uno nuevo.
- Para ejecutar los comandos de
gcloud
en esta página, instala los Google Cloud CLI.
Usa la imagen maven
Puedes configurar Cloud Build para compilar aplicaciones de Java con el
Imagen de maven
de Docker Hub.
Para ejecutar tus tareas en la imagen maven
, especifica la URL de la
y la versión etiquetada de la imagen en el campo name
de tu compilación
de configuración de Terraform. Si no especificas la etiqueta de imagen, Cloud Build
usa la imagen latest
de forma predeterminada. Cloud Build inicia la imagen
se especifica en name
mediante el punto de entrada predeterminado de la imagen. Para anular el
un punto de entrada predeterminado y, también, para invocar a maven
como un punto de entrada, especifica
mvn
en el campo entrypoint
.
En el siguiente archivo de configuración de compilación, se especifica el entrypoint
para la imagen maven
y se imprime la versión de la herramienta de compilación:
steps:
- name: maven:3.3-jdk-8
entrypoint: mvn
args: ['--version']
Configura compilaciones de Java
En el directorio raíz del proyecto, crea un archivo de configuración de compilación llamado
cloudbuild.yaml
.Ejecuta pruebas:
maven
proporcionamaven test
, que descarga dependencias, compila las aplicaciones y ejecuta cualquier prueba especificada en tu código fuente. El campoargs
de un paso de compilación toma una lista de argumentos y los pasa a la imagen a la que hace referencia el camponame
.En tu archivo de configuración de compilación, agrega
test
al campoargs
para invocartest
. enmaven
:steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['test']
Empaqueta la aplicación: A fin de empaquetar la aplicación en un archivo JAR para la imagen de
maven
, especifica el comandopackage
en el campoargs
. El comandopackage
compila un archivo JAR en/workspace/target/
.En el siguiente paso de compilación, se empaqueta la aplicación de Java:
steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['package','-Dmaven.test.skip=true']
Sube el archivo a Artifact Registry:
En tu archivo de configuración de compilación, usa el campo
mavenArtifacts
para especificar la la ruta de la aplicación y tu repositorio de Maven en Artifact Registry:artifacts: mavenArtifacts: - repository: 'https://location-maven.pkg.dev/project-id/repository-name' path: 'app-path' artifactId: 'build-artifact' groupId: 'group-id' version: 'version'
Reemplaza los siguientes valores:
- location: Es la ubicación de tu repositorio en Artifact Registry.
- project-id: Es el ID del proyecto de Google Cloud que contiene tu repositorio de Artifact Registry.
- repository-name: Es el nombre de tu repositorio de Maven en Artifact Registry.
- app-path: Es la ruta de acceso a tu aplicación empaquetada.
- build-artifact: Es el nombre del archivo de paquete creado a partir de tu paso de compilación.
- group-id: Identifica tu proyecto de forma única en todos los proyectos de Maven, en el formato
com.mycompany.app
. Para obtener más información, consulta la guía de Maven sobre las convenciones de nombres. - version: Es el número de versión de tu aplicación, con formato de números y puntos, como
1.0.1
.
Opcional: Habilita la generación de procedencia
Cloud Build puede generar modelos de Compilación de Niveles de cadena de suministro para artefactos de software (SLSA) metadatos de procedencia para ayudar a proteger tu canalización de integración continua.
Para habilitar la generación de procedencia, agrega
requestedVerifyOption: VERIFIED
a la secciónoptions
de tu archivo de configuración.Inicia tu compilación: de forma manual o usar activadores de compilación
Cuando se complete la compilación, podrás ver los detalles del repositorio. en Artifact Registry.
También puedes ver los metadatos de procedencia de la compilación y validar la procedencia.
¿Qué sigue?
- Aprende a ver resultados de compilación.
- Obtén más información sobre cómo proteger compilaciones.
- Aprende a realizar implementaciones azul-verde en Compute Engine.
- Aprende a compilar y alojar aplicaciones de Java en contenedores.
- Obtén más información sobre cómo implementar una aplicación en Cloud Run.
- Obtén más información sobre cómo implementar una aplicación en GKE.
- Obtén más información para solucionar errores de compilación.