Auf dieser Seite wird erläutert, wie Sie mit Cloud Build Java-basierte Anwendungen erstellen und testen, erstellte Artefakte in einem Maven-Repository in Artifact Registry speichern und Informationen zur Build-Herkunft generieren.
Hinweise
- Machen Sie sich mit der Erstellung von Java-basierten Anwendungen vertraut.
- Sie sollten mit Maven vertraut sein.
- Halten Sie Ihr Java-Projekt bereit.
- Machen Sie sich damit vertraut, wie eine Cloud Build-Konfigurationsdatei geschrieben wird.
- Sie haben ein Maven-Repository in Artifact Registry. Falls Sie noch keines haben, erstellen Sie ein neues Repository.
- Zum Ausführen der
gcloud-Befehle auf dieser Seite müssen Sie die Google Cloud CLI installieren.
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 aufmavenodermaven:<tag>fest. Das Tag steht für die Version. 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 innameverwiesen wird. Legen Sie den Wert dieses Felds aufmvnfest, ummvnals Einstiegspunkt für den Build-Schritt aufzurufen undmvn-Befehle auszuführen.args: Im Feldargseines Build-Schritts wird eine Liste von Argumenten abgerufen und an das Image übergeben, auf das im Feldnameverwiesen wird.
Im folgenden Build-Schritt wird entrypoint für das maven-Image festgelegt, das mit 3.3-jdk-8 getaggt ist, und die Version des Build-Tools ausgegeben:
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:
mavenstelltmaven testbereit. Dadurch werden die Abhängigkeiten heruntergeladen, die Anwendungen werden erstellt und alle in Ihrem Quellcode angegebenen Tests werden ausgeführt. Im Feldargseines Build-Schritts wird eine Liste von Argumenten abgerufen und an das Image übergeben, auf das im Feldnameverwiesen wird.Fügen Sie in Ihrer Build-Konfigurationsdatei dem Feld
argsden Werttesthinzu, umtestinnerhalb vonmavenaufzurufen:steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['test']Anwendung verpacken: Geben Sie im Feld
argsden Befehlpackagean, um Ihre Anwendung in einer JAR-Datei für dasmaven-Image zu verpacken. Mit dem Befehlpackagewird 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
mavenArtifactsden 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 Projekts Google Cloud , das Ihr Artifact Registry-Repository enthält.
- repository-name: der Name Ihres Maven-Repositorys in Artifact Registry.
- app-path: der Pfad zur verpackten Anwendung.
- build-artifact ist der Name der Paketdatei, die aus dem Build-Schritt erstellt wurde.
- group-id: identifiziert Ihr Projekt eindeutig in allen Maven-Projekten im Format
com.mycompany.app. Weitere Informationen finden Sie in der Maven-Anleitung zu Namenskonventionen. - version: die Versionsnummer Ihrer Anwendung, formatiert in Ziffern und Punkten wie
1.0.1.
Optional: Generierung der Provenienz aktivieren
Cloud Build kann verifizierbare Herkunftsmetadaten für Lieferkettenebenen für Software-Artefakte (SLSA) generieren, um Ihre Continuous-Integration-Pipeline zu schützen.
Wenn Sie die Generierung der Provenienz aktivieren möchten, fügen Sie in der Konfigurationsdatei dem Abschnitt
optionsden WertrequestedVerifyOption: VERIFIEDhinzu.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 auch Metadaten zur Build-Herkunft aufrufen und die Herkunft überprü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
- Weitere Informationen zum Erstellen und Containerisieren von Java-Anwendungen
- Mehr zum Bereitstellen einer Anwendung in Cloud Run
- Mehr zum Bereitstellen einer Anwendung in GKE
- Build-Fehler beheben