Questa pagina spiega come utilizzare Cloud Build per compilare e testare applicazioni basate su Java, archiviare gli artefatti compilati in un repository Maven in Artifact Registry e generare informazioni sull'origine della compilazione.
Prima di iniziare
- Devi conoscere la creazione di applicazioni basate su Java.
- Devi conoscere Maven
- Prepara il tuo progetto Java.
- Devi conoscere come scrivere un file di configurazione di Cloud Build.
- Avere un repository Maven in Artifact Registry. Se non ne hai uno, crea un nuovo repository.
- Per eseguire i comandi
gcloudin questa pagina, installa Google Cloud CLI.
Utilizzo dell'immagine maven
Puoi configurare Cloud Build per creare applicazioni Java utilizzando l'immagine maven di Docker Hub.
Per eseguire le attività nell'immagine maven, aggiungi un passaggio alla configurazione di compilazione con i seguenti campi:
name: imposta il valore di questo campo sumavenomaven:<tag>, dove il tag rappresenta la versione. Se non specifichi il tag immagine, Cloud Build utilizza per impostazione predefinita l'immaginelatest.entrypoint: l'impostazione di questo campo sostituisce il punto di contatto predefinito dell'immagine a cui si fa riferimento inname. Imposta il valore di questo campo sumvnper invocaremvncome punto di contatto del passaggio di compilazione ed eseguire i comandimvn.args: il campoargsdi un passaggio di compilazione prende un elenco di argomenti e li passa all'immagine a cui fa riferimento il camponame.
Il seguente passaggio di compilazione specifica il entrypoint per l'immagine maven
taggata come 3.3-jdk-8 e stampa la versione dello strumento di compilazione:
steps:
- name: maven:3.3-jdk-8
entrypoint: mvn
args: ['--version']
Configurazione delle build di Java
Nella directory principale del progetto, crea un file di configurazione della build denominato
cloudbuild.yaml.Esegui test:
mavenforniscemaven test, che scarica le dipendenze, compila le applicazioni ed esegue tutti i test specificati nel codice sorgente. Il campoargsdi un passaggio di compilazione prende un elenco di argomenti e li passa all'immagine a cui fa riferimento il camponame.Nel file di configurazione del build, aggiungi
testal campoargsper richiamaretestall'interno dimaven:steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['test']Pacchettizza l'applicazione: per pacchettizzare l'applicazione in un file JAR per l'immagine
maven, specifica il comandopackagenel campoargs. Il comandopackagecrea un file JAR in/workspace/target/.Il seguente passaggio di compilazione esegue il pacchettizzazione dell'applicazione Java:
steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['package','-Dmaven.test.skip=true']Carica in Artifact Registry:
Nel file di configurazione della build, utilizza il campo
mavenArtifactsper specificare il percorso dell'applicazione e il repository Maven in 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'Sostituisci i seguenti valori:
- location: la posizione del tuo repository in Artifact Registry.
- project-id: l'ID del progetto che contiene il repository Artifact Registry. Google Cloud
- repository-name: il nome del repository Maven in Artifact Registry.
- app-path: il percorso dell'applicazione pacchettizzata.
- build-artifact: il nome del file del pacchetto creato dal passaggio di compilazione.
- group-id: identifica in modo univoco il tuo progetto in tutti i progetti Maven, nel formato
com.mycompany.app. Per ulteriori informazioni, consulta la guida di Maven alle convenzioni di denominazione. - version: il numero di versione dell'applicazione, formattato in numeri e puntini come
1.0.1.
(Facoltativo) Attivare la generazione della provenienza
Cloud Build può generare metadati verificabili per l'origine della compilazione Supply Chain Levels for Software Artifacts (SLSA) per contribuire a proteggere la pipeline di integrazione continua.
Per attivare la generazione dell'origine, aggiungi
requestedVerifyOption: VERIFIEDalla sezioneoptionsdel file di configurazione.Avvia la build: manualmente o utilizzando gli trigger di build.
Al termine della build, puoi visualizzare i dettagli del repository in Artifact Registry.
Puoi anche visualizzare i metadati dell'origine della compilazione e convalidare l'origine.
Passaggi successivi
- Scopri come visualizzare i risultati della build.
- Scopri come proteggere le build.
- Scopri come eseguire deployment blu/verdi su Compute Engine.
- Scopri come creare e containerizzare applicazioni Java.
- Scopri come eseguire il deployment di un'applicazione su Cloud Run.
- Scopri come eseguire il deployment di un'applicazione su GKE.
- Scopri come risolvere gli errori di compilazione.