Membangun repositori dari GitLab

Dengan Cloud Build, Anda dapat membuat pemicu untuk mem-build dari repositori yang dihosting di GitLab, sehingga Anda dapat menjalankan build sebagai respons terhadap peristiwa seperti push commit atau permintaan penggabungan yang terkait dengan repositori GitLab Anda.

Halaman ini menjelaskan cara mengaktifkan fungsi pemicu pada instance GitLab. Pelajari pemicu Cloud Build dan repositori Cloud Build lebih lanjut.

Sebelum memulai

  • Aktifkan API Cloud Build and Secret Manager.

    Mengaktifkan API

Membuat pemicu GitLab

Konsol

Untuk membuat pemicu GitLab menggunakan Konsol Google Cloud:

  1. Buka halaman Pemicu:

    Buka halaman Pemicu

  2. Pilih project Google Cloud Anda dari bagian atas halaman, lalu klik Open.

  3. Klik Create trigger.

  4. Masukkan setelan pemicu berikut:

    • Nama: Nama pemicu Anda.

    • Region: Pilih wilayah untuk pemicu Anda.

      • Jika file konfigurasi build yang terkait dengan pemicu menentukan kumpulan pribadi, Cloud Build akan menggunakan kumpulan pribadi untuk menjalankan build Anda. Dalam hal ini, region yang Anda tentukan dalam pemicu harus cocok dengan region tempat Anda membuat kumpulan pribadi.
      • Jika file konfigurasi build yang terkait dengan pemicu tidak menentukan kumpulan pribadi, Cloud Build akan menggunakan kumpulan default untuk menjalankan build di region yang sama dengan pemicu Anda.
    • Deskripsi (Opsional): Deskripsi untuk pemicu Anda.

    • Peristiwa: Pilih peristiwa repositori untuk memanggil pemicu Anda.

      • Push ke cabang: Tetapkan pemicu untuk memulai build pada commit ke cabang tertentu.

      • Kirim tag baru: Tetapkan pemicu untuk memulai build pada commit yang berisi tag tertentu.

      • Pull request (Cloud Source Repositories tidak didukung): Menetapkan pemicu Anda untuk memulai build pada commit ke permintaan penggabungan.

    • Sumber: Pilih generasi ke-2 sebagai sumber Anda.

      • Repository: Dari daftar repositori yang tersedia, pilih repositori yang diinginkan. Untuk menghubungkan repositori baru, lihat Menghubungkan ke repositori GitLab.

      • Branch atau Tag: Tentukan ekspresi reguler dengan nilai cabang atau tag yang akan dicocokkan. Untuk mengetahui informasi mengenai sintaksis ekspresi reguler yang dapat diterima, lihat sintaksis RE2.

      • Comment control: Jika Anda memilih Pull request sebagai Event, pilih salah satu opsi berikut untuk mengontrol apakah build akan otomatis dijalankan oleh pemicu:

        • Wajib kecuali untuk pemilik dan kolaborator: Saat permintaan penggabungan dibuat atau diperbarui oleh pemilik atau kolaborator repositori, build akan otomatis dijalankan oleh pemicu. Jika kontributor eksternal memulai tindakan, build hanya akan dijalankan setelah pemilik atau kolaborator mengomentari /gcbrun pada permintaan penggabungan.

        • Wajib: Saat permintaan penggabungan dibuat atau diperbarui oleh kontributor, build hanya akan dijalankan setelah pemilik atau kolaborator memberi komentar /gcbrun pada permintaan penggabungan. Build dieksekusi setiap kali perubahan pada permintaan penggabungan dibuat.

        • Tidak diperlukan: Saat permintaan penggabungan dibuat atau diperbarui oleh kontributor, build akan otomatis dijalankan oleh pemicu.

    • Configuration: Pilih file konfigurasi build yang ada di repositori atau konfigurasi build Anda secara inline pada pemicu.

    • Type: Pilih jenis konfigurasi yang akan digunakan untuk build Anda.

      • Cloud Build configuration file (yaml atau json): Menggunakan file konfigurasi build untuk konfigurasi Anda.
      • Dockerfile: Gunakan Dockerfile untuk konfigurasi Anda.
    • Location: Menentukan lokasi untuk konfigurasi Anda.

      • Repositori: Jika file konfigurasi berada di repositori Anda, berikan lokasi file konfigurasi build atau direktori Dockerfile dan nama untuk image yang dihasilkan. Jika konfigurasinya adalah Dockerfile, Anda dapat menyediakan waktu tunggu untuk build secara opsional. Setelah memberikan nama Dockerfile dan image, Anda akan melihat pratinjau perintah docker build yang akan dijalankan oleh build Anda.

      • Inline: Jika memilih Cloud Build configuration file (yaml atau json) sebagai opsi konfigurasi, Anda dapat menentukan konfigurasi build secara inline. Klik Open Editor untuk menulis file konfigurasi build di Google Cloud Console menggunakan sintaksis YAML atau JSON. Klik Done untuk menyimpan konfigurasi build Anda.

  5. Klik Create untuk membuat pemicu GitLab.

gcloud

Untuk membuat pemicu GitLab menggunakan perintah gcloud, jalankan perintah berikut:

gcloud builds triggers create gitlab \
  --name=TRIGGER_NAME \
  --repository=projects/PROJECT_ID/locations/REGION/connections/CONNECTION_NAME/repositories/REPO_NAME \
  --branch-pattern=BRANCH_PATTERN # or --tag-pattern=TAG_PATTERN \
  --build-config=BUILD_CONFIG_FILE \
  --region=REGION

Dengan keterangan:

  • TRIGGER_NAME adalah nama pemicu Anda.
  • PROJECT_ID adalah ID project Google Cloud Anda.
  • REGION adalah wilayah untuk pemicu Anda.
  • CONNECTION_NAME adalah nama koneksi GitLab Anda.
  • REPO_NAME adalah nama repositori Anda
  • BRANCH_PATTERN adalah nama cabang di repositori Anda untuk memanggil build.
  • TAG_PATTERN adalah nama tag di repositori Anda untuk memanggil build.
  • BUILD_CONFIG_FILE adalah jalur ke file konfigurasi build Anda.

Berbagi data

Data yang dikirim ke GitLab dari Cloud Build membantu Anda mengidentifikasi pemicu berdasarkan nama dan melihat hasil build di repositori GitLab Anda.

Data berikut saat ini dibagikan antara Cloud Build dan host GitLab Anda:

  • ID project Google Cloud
  • Trigger name

Langkah selanjutnya