Halaman ini menjelaskan cara menggunakan Cloud Build untuk membangun dan menguji aplikasi berbasis Java, menyimpan artefak yang dibangun di repositori Maven di Artifact Registry, dan membuat informasi provenance build.
Sebelum memulai
- Kenali pembuatan aplikasi berbasis Java.
- Mengenal Maven
- Siapkan project Java Anda.
- Pahami cara menulis file konfigurasi Cloud Build.
- Memiliki repositori Maven di Artifact Registry. Jika Anda belum memilikinya, buat repositori baru.
- Untuk menjalankan perintah
gcloud
di halaman ini, instal Google Cloud CLI.
Menggunakan gambar maven
Anda dapat mengonfigurasi Cloud Build untuk mem-build aplikasi Java menggunakan image maven
dari Docker Hub.
Untuk menjalankan tugas di image maven
, tentukan URL image dan versi image yang diberi tag di kolom name
file konfigurasi build Anda. Jika Anda tidak menentukan tag gambar, Cloud Build akan menggunakan image latest
secara default. Cloud Build memulai image yang ditentukan dalam name
menggunakan titik entri default gambar. Untuk mengganti
titik entri default dan memanggil maven
sebagai titik entri, tentukan
mvn
di kolom entrypoint
.
File konfigurasi build berikut menentukan entrypoint
untuk image maven
dan mencetak versi alat build:
steps:
- name: maven:3.3-jdk-8
entrypoint: mvn
args: ['--version']
Mengonfigurasi Java
build
Di direktori utama project, buat file konfigurasi build dengan nama
cloudbuild.yaml
.Jalankan pengujian:
maven
menyediakanmaven test
, yang mendownload dependensi, membangun aplikasi, dan menjalankan pengujian yang ditentukan dalam kode sumber. Kolomargs
dari langkah build mengambil daftar argumen dan meneruskannya ke gambar yang dirujuk oleh kolomname
.Di file konfigurasi build, tambahkan
test
ke kolomargs
untuk memanggiltest
dalammaven
:steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['test']
Package application: Untuk memaketkan aplikasi Anda menjadi file JAR untuk image
maven
, tentukan perintahpackage
di kolomargs
. Perintahpackage
membuat file JAR di/workspace/target/
.Langkah build berikut memaketkan aplikasi Java Anda:
steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['package','-Dmaven.test.skip=true']
Upload ke Artifact Registry:
Cloud Build menghasilkan informasi provenance build Supply chain Levels for Software Artifacts (SLSA) untuk paket Maven mandiri saat Anda mengupload artefak ke Artifact Registry menggunakan kolom
mavenArtifacts
di file konfigurasi Cloud Build Anda.Dalam file konfigurasi build, gunakan kolom
mavenArtifacts
untuk menentukan jalur file aplikasi dan repositori Maven Anda di 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'
Ganti nilai berikut:
- location: lokasi repositori Anda di Artifact Registry.
- project-id: ID project Google Cloud yang berisi repositori Artifact Registry Anda.
- repository-name: nama repositori Maven Anda di Artifact Registry.
- app-path: jalur ke aplikasi terpaket Anda.
- build-artifact: nama file paket yang dibuat dari langkah build Anda.
- group-id: secara unik mengidentifikasi project Anda di semua project Maven, dalam format
com.mycompany.app
. Untuk mengetahui informasi selengkapnya, lihat Panduan Maven untuk konvensi penamaan. - version: nomor versi untuk aplikasi Anda, diformat dalam angka dan titik seperti
1.0.1
.
Opsional: Mengaktifkan provenance untuk build regional
Jika Anda menggunakan build regional, tambahkan kolom
requestedVerifyOption
dioptions
pada file konfigurasi build Anda. Setel nilai keVERIFIED
untuk mengaktifkan pembuatan metadata provenance. Jika Anda tidak menambahkanrequestedVerifyOption: VERIFIED
, Cloud Build akan menghasilkan provenance untuk build global saja.options: requestedVerifyOption: VERIFIED
Mulai build: secara manual atau gunakan pemicu build.
Setelah build selesai, Anda dapat melihat detail repositori di Artifact Registry.
Anda juga dapat melihat metadata provenance build dan memvalidasi provenance untuk membantu melindungi supply chain software Anda.
Langkah selanjutnya
- Pelajari cara melihat hasil build.
- Pelajari cara mengamankan build.
- Pelajari cara melakukan blue/green deployment di Compute Engine.
- Pelajari cara membangun dan memasukkan aplikasi Java ke dalam container.
- Pelajari cara men-deploy aplikasi di Cloud Run.
- Pelajari cara men-deploy aplikasi di GKE.
- Pelajari cara memecahkan masalah error build.