Cloud Build memungkinkan Anda membuat pemicu pada instance GitHub Enterprise. Halaman ini menjelaskan cara menggunakan pemicu GitHub Enterprise untuk memanggil build sebagai respons terhadap commit atau permintaan pull dari repositori GitHub Enterprise.
Pelajari pemicu Cloud Build dan repositori Cloud Build lebih lanjut.
Sebelum memulai
-
Aktifkan API Cloud Build and Secret Manager.
- Ikuti petunjuk untuk menghubungkan host GitHub Enterprise.
- Ikuti petunjuk untuk menghubungkan repositori GitHub Enterprise.
Membuat pemicu GitHub Enterprise
Bagian ini menjelaskan cara membuat pemicu dan menautkannya ke penginstalan GitHub Enterprise. Jika Anda ingin menggunakan pemicu GitHub Enterprise di jaringan pribadi, lihat Membuat repositori dari GitHub Enterprise di jaringan pribadi untuk mengetahui petunjuk lebih lanjut.
Konsol
Untuk membuat pemicu GitHub Enterprise menggunakan Konsol Google Cloud:
Buka halaman Pemicu di Konsol Google Cloud.
Pilih project Anda dari menu drop-down pemilih project di bagian atas halaman.
Klik Buka.
Klik Create trigger.
Masukkan setelan pemicu berikut:
Nama: Masukkan nama untuk 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): Masukkan 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.
Permintaan pull: Menetapkan pemicu untuk memulai build pada commit ke permintaan pull.
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 GitHub Enterprise.
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 (GitHub App only) sebagai Event, pilih salah satu opsi berikut untuk mengontrol apakah build akan otomatis dijalankan oleh pemicu:
Wajib kecuali untuk pemilik dan kolaborator: Saat permintaan pull dibuat atau diperbarui oleh pemilik repositori atau kolaborator, build akan otomatis dijalankan oleh pemicu. Jika kontributor eksternal memulai tindakan, build hanya akan dijalankan setelah pemilik atau kolaborator mengomentari
/gcbrun
pada permintaan pull.Wajib: Saat permintaan pull dibuat atau diperbarui oleh pemilik repositori atau kolaborator dengan
/gcbrun
dalam deskripsi atau komentar permintaan pull, build akan otomatis dijalankan oleh pemicu. Saat permintaan pull dibuat atau diperbarui oleh kontributor, build hanya akan dijalankan setelah pemilik atau kolaborator mengomentari/gcbrun
pada permintaan pull.Tidak diperlukan: Saat permintaan pull dibuat atau diperbarui oleh kontributor, build akan otomatis dijalankan oleh pemicu.
Included files (opsional): Perubahan yang memengaruhi setidaknya salah satu file ini akan memanggil build.
File yang diabaikan (opsional): Perubahan yang hanya memengaruhi file yang diabaikan tidak akan memanggil build.
Konfigurasi: Pilih file konfigurasi build yang berada di repositori jarak jauh atau buat file konfigurasi build inline untuk digunakan pada build Anda.
- Type: Pilih jenis konfigurasi yang akan digunakan untuk build Anda.
- Deteksi otomatis: Cloud Build mendeteksi otomatis jenis konfigurasi jika ada
cloudbuild.yaml
atauDockerfile
di repositori Anda. - Cloud Build configuration file (yaml atau json): Menggunakan file konfigurasi build untuk konfigurasi Anda.
- Dockerfile: Gunakan
Dockerfile
untuk konfigurasi Anda. - Buildpacks: Gunakan buildpacks untuk konfigurasi Anda.
- Deteksi otomatis: Cloud Build mendeteksi otomatis jenis konfigurasi jika ada
Location: Menentukan lokasi untuk konfigurasi Anda.
- Repositori: Jika file konfigurasi Anda berada di repositori jarak jauh, berikan lokasi file konfigurasi build atau direktori
Dockerfile
dan nama untuk image yang dihasilkan. Jika konfigurasinya adalahDockerfile
, Anda dapat menyediakan waktu tunggu untuk build secara opsional. Setelah memberikan namaDockerfile
dan image, Anda akan melihat pratinjau perintahdocker 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.
- Repositori: Jika file konfigurasi Anda berada di repositori jarak jauh, berikan lokasi file konfigurasi build atau direktori
- Type: Pilih jenis konfigurasi yang akan digunakan untuk build Anda.
Variabel substitusi (opsional): Jika memilih file konfigurasi Cloud Build sebagai opsi konfigurasi build, Anda dapat memilih untuk menentukan variabel substitusi khusus pemicu menggunakan kolom ini. Misalnya, Anda membuat beberapa pemicu dengan setiap pemicu men-deploy aplikasi Anda ke lingkungan tertentu. Anda dapat menentukan apakah aplikasi Anda di-deploy ke lingkungan dalam file konfigurasi build, lalu menggunakan kolom ini untuk menentukan variabel substitusi yang menentukan lingkungan mana yang harus di-deploy oleh pemicu ini. Untuk informasi tentang cara menentukan nilai substitusi dalam file konfigurasi build, lihat Mengganti nilai variabel.
Build logs (opsional): Centang kotak untuk mengirim log build ke GitHub. Untuk mempelajari cara melihat log build, buka Melihat log build.
Akun layanan: Pilih akun layanan yang akan digunakan saat memanggil pemicu. Jika Anda tidak memilih akun layanan, akun layanan Cloud Build default akan digunakan.
Klik Buat untuk menyimpan pemicu build Anda.
Untuk membuat pemicu GitHub menggunakan perintah gcloud
, lihat perintah gcloud
untuk Membuat pemicu build.
gcloud
Untuk membuat pemicu GitHub Enterprise menggunakan perintah gcloud
, jalankan perintah berikut:
gcloud builds triggers create github \
--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 GitHub Enterprise 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 GitHub Enterprise dari Cloud Build membantu Anda mengidentifikasi pemicu berdasarkan nama dan melihat hasil build di GitHub Enterprise.
Data berikut saat ini dibagikan antara Cloud Build dan GitHub Enterprise:
- ID project cloud
- Trigger name
- Log build
Jika Anda membuat pemicu sebelum Agustus 2020, fitur berbagi data mungkin tidak diaktifkan untuk project Anda. Anda dapat mengaktifkan berbagi data untuk semua pemicu GitHub Enterprise di project dengan mengklik Enable di tab Berbagi Data Cloud Build.
Jika Anda telah mengaktifkan pemeriksaan status yang diperlukan untuk repositori GitHub Enterprise, mengaktifkan berbagi data dapat merusak pemeriksaan status untuk sementara. Anda dapat menyesuaikan konfigurasi pemeriksaan status untuk mencari nama pemicu dengan:
- Menonaktifkan pemeriksaan wajib khusus Cloud Build di repositori GitHub Enterprise
- Memastikan bahwa berbagi data diaktifkan di Cloud Build
- Menjalankan build baru di Cloud Build yang memposting status ke repositori Anda
- Mengaktifkan kembali pemeriksaan status yang diperlukan, memilih nama pemicu
Langkah berikutnya
- Pelajari cara membuat dan mengelola pemicu.
- Pelajari cara mem-build repositori dari GitHub Enterprise di jaringan pribadi.
- Pelajari cara melakukan blue/green deployment di Compute Engine.