Mem-build repositori dari GitHub Enterprise

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.

    Mengaktifkan API

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:

  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 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 atau Dockerfile 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.
      • 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 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.
    • 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.

  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 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