Dokumen ini menjelaskan cara menjalankan build di kumpulan pribadi. Jika Anda baru mengenal kumpulan pribadi, baca Ringkasan kumpulan pribadi.
Sebelum memulai
Pastikan Anda telah membuat kumpulan pribadi menggunakan langkah-langkah di Membuat dan mengelola kumpulan pribadi.
Untuk menggunakan contoh command line dalam panduan ini, instal dan konfigurasikan Google Cloud CLI.
Anda dapat menggunakan project Google Cloud yang sama untuk membuat kumpulan pribadi dan build Cloud Build atau menggunakan project yang berbeda. Jika build Anda berada dalam project yang berbeda dengan kumpulan private, tetapkan project default di gcloud CLI ke project tempat build Anda berasal:
gcloud config set project BUILD_ORIGIN_PROJECT_ID
Izin IAM
Untuk menjalankan build melalui gcloud CLI atau Cloud Build API, berikan peran WorkerPool User di project kumpulan pribadi kepada pengguna atau akun layanan yang meminta build.
Untuk menjalankan build otomatis menggunakan pemicu:
- Jika project tempat Anda memulai build sama dengan project tempat kumpulan pribadi Anda berada, Anda tidak perlu memberikan izin apa pun.
Jika project tempat Anda memulai build berbeda dengan project tempat pool pribadi Anda berada, berikan peran WorkerPool User ke akun layanan yang Anda gunakan dengan pemicu di project workerpool tempat build Anda dibuat:
Konsol
Buka halaman IAM di konsol Google Cloud.
Pada menu drop-down pemilih project di bagian atas halaman, pilih project yang berisi kumpulan pribadi Anda.
Klik Grant access.
Masukkan setelan akun utama dan peran berikut:
Tambahkan akun utama: Masukkan alamat email akun layanan yang Anda gunakan dengan pemicu.
Tetapkan peran: Pilih peran Pengguna WorkerPool Cloud Build.
Klik Simpan untuk menyimpan izin IAM baru.
gcloud
Untuk menambahkan akun layanan build dari project pemicu ke project workerpool dengan peran cloudbuild.workerPoolUser:
gcloud projects add-iam-policy-binding PRIVATEPOOL_PROJECT_ID \ --member=serviceAccount:SERVICE_ACCOUNT \ --role=roles/cloudbuild.workerPoolUser
Ganti nilai placeholder dalam perintah di atas dengan yang berikut ini:
PRIVATEPOOL_PROJECT_ID
adalah ID project dengan kumpulan pribadi yang menjalankan build.SERVICE_ACCOUNT
adalah email akun layanan yang Anda gunakan dengan pemicu yang menjalankan build.
Menjalankan build
Anda dapat mengirimkan build dari project Google Cloud yang sama tempat Anda membuat kumpulan pribadi atau dari project Google Cloud yang berbeda. Anda dapat menentukan kumpulan pribadi di file konfigurasi build atau langsung di perintah gcloud
:
Menentukan kumpulan pribadi dalam file konfigurasi build:
Di file konfigurasi Cloud Build, tambahkan opsi
pool
dan tentukan nama resource lengkap dari kumpulan pekerja pribadi untuk menjalankan build:YAML
steps: - name: 'bash' args: ['echo', 'I am running in a private pool!'] options: pool: name: 'projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID'
JSON
{ "steps": [ { "name": "bash", "args": [ "echo", "I am running in a private pool!" ] } ], "options": { "pool" : { "name" : "projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID" } } }
Ganti nilai placeholder dalam file konfigurasi di atas dengan nilai berikut:
PRIVATEPOOL_PROJECT_ID
: project Google Cloud tempat kumpulan pribadi Anda berada.REGION
: region tempat Anda membuat kumpulan pribadi.PRIVATEPOOL_ID
: ID pool pribadi unik yang Anda tentukan saat membuat private pool.
Gunakan file konfigurasi build yang dibuat di atas untuk menjalankan build melalui
gcloud
atau API atau menggunakan pemicu. Jika instance Anda dihosting secara lokal, Cloud Build juga menyediakan dukungan fungsi pemicu untuk beberapa sistem pengelolaan kode sumber eksternal seperti GitHub Enterprise atau Bitbucket Server.
Menentukan kumpulan pribadi dalam perintah gcloud:
Anda dapat menentukan kumpulan pribadi dalam perintah gcloud
, bukan dalam
file konfigurasi build. Misalnya, anggaplah Anda memiliki file konfigurasi build
berikut:
YAML
steps:
- name: 'bash'
args: ['echo', 'I am running in a private pool!']
JSON
{
"steps": [
{
"name": "bash",
"args": [
"echo",
"I am running in a private pool!"
]
}
],
}
Perintah berikut dibuat menggunakan file konfigurasi build dan menentukan kumpulan pekerja dalam perintah:
gcloud builds submit --config=CONFIG_FILE
--worker-pool=projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID
Ganti nilai placeholder dalam perintah di atas dengan yang berikut ini:
CONFIG_FILE
: jalur ke file konfigurasi build Anda.PRIVATEPOOL_ID
: ID pool pribadi unik yang Anda tentukan saat membuat private pool.PRIVATEPOOL_PROJECT_ID
: project Google Cloud tempat kumpulan pribadi Anda berada.REGION
: region tempat Anda membuat kumpulan pribadi.
Apa langkah selanjutnya?
- Pelajari cara membuat dan mengelola pool pribadi.
- Pelajari cara menggunakan Kontrol Layanan VPC dengan kumpulan pribadi.
- Pelajari cara membuat dan mengelola pemicu build.
- Pelajari cara mem-build repositori dari GitHub Enterprise.
- Pelajari cara mem-build repositori dari Bitbucket Server.