Auf dieser Seite wird erläutert, wie Sie mit Cloud Build erstellen und testen Java-basierte Anwendungen, speichern Sie erstellte Artefakte in einem Maven-Repository in Artifact Registry verwenden und Informationen zur Build-Herkunft generieren
Hinweise
- Machen Sie sich mit der Erstellung von Java-basierten Anwendungen vertraut.
- Machen Sie sich mit Maven vertraut.
- Halten Sie Ihr Java-Projekt bereit.
- Machen Sie sich damit vertraut, wie eine Cloud Build-Konfigurationsdatei geschrieben wird.
- Sie müssen ein Maven-Repository in Artifact Registry haben. Erstellen Sie ein neues Repository, falls Sie noch keines haben.
- Zum Ausführen der
gcloud
-Befehle auf dieser Seite installieren Sie den Google Cloud CLI
maven
-Image verwenden
Sie können Cloud Build so konfigurieren, dass Java-Anwendungen mit dem maven
-Image aus Docker Hub erstellt werden.
Wenn Sie Ihre Aufgaben im maven
-Image ausführen möchten, fügen Sie Ihrer Build-Konfiguration einen Schritt mit den folgenden Feldern hinzu:
name
: Legen Sie den Wert dieses Felds aufmaven
odermaven:<tag>
fest, wobei der Wert -Tag für die Version steht. Wenn Sie das Image-Tag nicht angeben, verwendet Cloud Build standardmäßig daslatest
-Image.entrypoint
: Wenn Sie dieses Feld festlegen, wird der Standardeinstiegspunkt des Bilds überschrieben, auf das inname
verwiesen wird. Legen Sie den Wert dieses Felds aufmvn
fest, ummvn
als Einstiegspunkt für den Build-Schritt aufzurufen undmvn
-Befehle auszuführen.args
: Im Feldargs
eines Build-Schritts wird eine Liste von Argumenten abgerufen und an das Image übergeben, auf das im Feldname
verwiesen wird.
Im folgenden Build-Schritt wird die entrypoint
für das maven
-Image festgelegt
3.3-jdk-8
und gibt die Build-Tool-Version aus:
steps:
- name: maven:3.3-jdk-8
entrypoint: mvn
args: ['--version']
Java
-Builds konfigurieren
Erstellen Sie im Stammverzeichnis des Projekts eine Build-Konfigurationsdatei mit dem Namen
cloudbuild.yaml
.Tests ausführen:
maven
stelltmaven test
bereit. Dadurch werden die Abhängigkeiten heruntergeladen, die Anwendungen werden erstellt und alle in Ihrem Quellcode angegebenen Tests werden ausgeführt. Im Feldargs
eines Build-Schritts wird eine Liste von Argumenten abgerufen und an das Image übergeben, auf das im Feldname
verwiesen wird.Fügen Sie in Ihrer Build-Konfigurationsdatei dem Feld
args
den Werttest
hinzu, umtest
innerhalb vonmaven
aufzurufen:steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['test']
Anwendung verpacken: Geben Sie im Feld
args
den Befehlpackage
an, um Ihre Anwendung in einer JAR-Datei für dasmaven
-Image zu verpacken. Mit dem Befehlpackage
wird in/workspace/target/
eine JAR-Datei erstellt.Mit dem folgenden Build-Schritt wird Ihre Java-Anwendung verpackt:
steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['package','-Dmaven.test.skip=true']
In Artifact Registry hochladen:
Geben Sie in der Build-Konfigurationsdatei im Feld
mavenArtifacts
den Pfad zur Anwendung und das Maven-Repository in Artifact Registry an:artifacts: mavenArtifacts: - repository: 'https://location-maven.pkg.dev/project-id/repository-name' path: 'app-path' artifactId: 'build-artifact' groupId: 'group-id' version: 'version'
Ersetzen Sie die folgenden Werte:
- location: der Speicherort Ihres Repositorys in der Artifact Registry.
- project-id: die ID des Google Cloud-Projekts, das Ihr Artifact Registry-Repository enthält.
- repository-name: der Name Ihres Maven-Repositorys in Artifact Registry.
- app-path: der Pfad zum Anwendungspaket.
- build-artifact ist der Name der Paketdatei, die aus dem Build-Schritt erstellt wurde.
- group-id: Identifiziert Ihr Projekt in allen Maven-Projekten eindeutig im Format
com.mycompany.app
. Weitere Informationen finden Sie in der Maven-Anleitung zu Namenskonventionen. - version: Die Versionsnummer für Ihre Anwendung, formatiert in Zahlen und Punkten wie
1.0.1
.
Optional: Provenance-Generierung aktivieren
Cloud Build kann überprüfbare SLSA-Build (Supply Chain Levels for Software Artifacts) Herkunftsmetadaten, um Ihre Continuous-Integration-Pipeline zu sichern.
Um das Generieren von Herkunft zu ermöglichen, fügen Sie
requestedVerifyOption: VERIFIED
zum Abschnittoptions
Ihrer Konfigurationsdatei hinzu.Starten Sie den Build: manuell oder mithilfe von Build-Triggern.
Sobald der Build abgeschlossen ist, können Sie sich die Repository-Details in Artifact Registry ansehen.
Sie können sich auch Build-Herkunftsmetadaten ansehen und Herkunft prüfen.
Nächste Schritte
- Build-Ergebnisse aufrufen
- Weitere Informationen zum Schützen von Builds
- Weitere Informationen zu Blau/Grün-Bereitstellungen in der Compute Engine
- Java-Anwendungen erstellen und containerisieren
- Mehr zum Bereitstellen einer Anwendung in Cloud Run
- Mehr zum Bereitstellen einer Anwendung in GKE
- Build-Fehler beheben