Membangun repositori dari GitHub Enterprise

Cloud Build memungkinkan Anda membuat pemicu di 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

  • Enable the Cloud Build and Secret Manager APIs.

    Enable the APIs

Membuat pemicu GitHub Enterprise

Bagian ini menjelaskan cara membuat pemicu dan menautkannya ke penginstalan GitHub Enterprise Anda. Jika Anda ingin menggunakan pemicu GitHub Enterprise di jaringan pribadi, lihat Mem-build repositori dari GitHub Enterprise di jaringan pribadi untuk mengetahui petunjuk lebih lanjut.

Konsol

Untuk membuat pemicu GitHub Enterprise menggunakan Konsol Google Cloud:

  1. Buka halaman Pemicu di konsol Google Cloud.

    Buka halaman Pemicu

  2. Pilih project Anda dari menu drop-down pemilih project di bagian atas halaman.

  3. Klik Buka.

  4. Klik Create trigger.

  5. Masukkan setelan pemicu berikut:

    • Nama: Masukkan nama untuk pemicu Anda.

    • Region: Pilih region 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 di 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.

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

      • Permintaan pull: Tetapkan pemicu untuk memulai build pada commit ke permintaan pull.

    • Sumber: Pilih 2nd generation sebagai sumber Anda.

      • Repositori: Dari daftar repositori yang tersedia, pilih repositori yang diinginkan. Untuk menghubungkan repositori baru, lihat Menghubungkan ke repositori GitHub Enterprise.

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

      • Kontrol komentar: Jika Anda memilih Permintaan pull (khusus Aplikasi GitHub) sebagai Peristiwa, 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 atau kolaborator repositori, build akan otomatis dieksekusi oleh pemicu. Jika kontributor eksternal memulai tindakan, build hanya akan dieksekusi setelah pemilik atau kolaborator mengomentari /gcbrun pada permintaan pull.

        • Wajib: Saat permintaan pull dibuat atau diperbarui oleh pemilik atau kolaborator repositori 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 dieksekusi setelah pemilik atau kollaborator mengomentari /gcbrun pada permintaan pull.

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

    • File yang disertakan (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 Anda atau buat file konfigurasi build inline untuk digunakan dalam build Anda.

      • Type: Pilih jenis konfigurasi yang akan digunakan untuk build Anda.
        • Terdeteksi otomatis: Cloud Build mendeteksi otomatis jenis konfigurasi Anda jika Anda memiliki cloudbuild.yaml atau Dockerfile di repositori.
        • File konfigurasi Cloud Build (yaml atau json): Gunakan file konfigurasi build untuk konfigurasi Anda.
        • Dockerfile: Gunakan Dockerfile untuk konfigurasi Anda.
        • Buildpack: Gunakan buildpacks untuk konfigurasi Anda.
      • Lokasi: Tentukan 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 konfigurasi Anda adalah Dockerfile, Anda dapat secara opsional memberikan waktu tunggu untuk build. Setelah memberikan Dockerfile dan nama image, Anda akan melihat pratinjau perintah docker build yang akan dieksekusi build Anda.
        • Inline: Jika memilih File konfigurasi Cloud Build (yaml atau json) sebagai opsi konfigurasi, Anda dapat menentukan konfigurasi build secara langsung. Klik Buka Editor untuk menulis file konfigurasi build di konsol Google Cloud menggunakan sintaksis YAML atau JSON. Klik Done untuk menyimpan konfigurasi build Anda.
    • Substitution variables (opsional): Jika memilih file konfigurasi Cloud Build sebagai opsi konfigurasi build, Anda dapat memilih untuk menentukan variabel penggantian khusus pemicu menggunakan kolom ini. Misalnya, Anda membuat beberapa pemicu dengan setiap pemicu men-deploy aplikasi ke lingkungan tertentu. Anda dapat menentukan bahwa aplikasi di-deploy ke lingkungan dalam file konfigurasi build, lalu menggunakan kolom ini untuk menentukan variabel penggantian yang menentukan lingkungan tempat pemicu ini akan di-deploy. Untuk mengetahui informasi tentang menentukan nilai penggantian dalam file konfigurasi build, lihat Mengganti nilai variabel.

    • Log build (opsional): Centang kotak untuk mengirim log build ke GitHub. Untuk mempelajari cara melihat log build, lihat Melihat log build.

    • Akun layanan: Pilih akun layanan yang akan digunakan saat memanggil pemicu Anda. Jika Anda tidak memilih akun layanan, akun layanan Cloud Build default akan digunakan.

  6. 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 region 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, pembagian data mungkin tidak diaktifkan untuk project Anda. Anda dapat mengaktifkan pembagian data untuk semua pemicu GitHub Enterprise di project dengan mengklik Aktifkan di tab Berbagi data Cloud Build.

Jika Anda mengaktifkan pemeriksaan status yang diperlukan untuk repositori GitHub Enterprise, mengaktifkan pembagian 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