Halaman ini menjelaskan skema file pemicu Secure Source Manager. Untuk petunjuk tentang cara membuat file pemicu, lihat Membuat file pemicu.
File pemicu berisi petunjuk bagi Secure Source Manager untuk memicu langkah-langkah yang ditentukan dalam file konfigurasi Cloud Build berdasarkan peristiwa permintaan push atau pull di Secure Source Manager.
Anda dapat mengonfigurasi aturan perlindungan cabang untuk mewajibkan pemeriksaan status yang berhasil dari pemicu tertentu. Untuk mempelajari perlindungan cabang lebih lanjut, baca Ringkasan perlindungan cabang.
Struktur file pemicu
File konfigurasi pemicu harus dibuat di cabang default repositori Anda. Anda dapat menulis file pemicu menggunakan sintaksis YAML.
File pemicu memiliki struktur berikut:
triggers:
- name: string
project: string
configFilePath: string
eventType: string
includedGitRefs: string
ignoredGitRefs: string
includedFiles: string
ignoredFiles: string
serviceAccount: string
disabled: bool
substitutions: map[string]string
- name: string
...
Setiap bagian bernama dari file pemicu menentukan konfigurasi Cloud Build yang akan digunakan untuk jenis peristiwa tertentu di Secure Source Manager.
Pemicu
Pemicu menentukan jenis peristiwa Secure Source Manager yang ingin Anda gunakan untuk memicu penyelesaian langkah-langkah dalam file konfigurasi Cloud Build tertentu. Anda juga dapat menentukan cabang mana yang dipantau untuk acara yang ditentukan.
Gunakan kolom name
dalam file pemicu untuk mengidentifikasi pemicu. Berikut contoh
jenis konfigurasi yang dapat Anda tetapkan dalam file pemicu:
triggers:
- name: presubmit-test
project: my-project
configFilePath: test.yaml
eventType: pull_request
includedGitRefs: ^main$
ignoredGitRefs: .*log
serviceAccount: projects/my-project/serviceAccounts/my-service-account@my-project.
includedFiles: .*
ignoredFiles: my-file.txt
disabled: false
- name: postsubmit-run
project: my-project
configFilePath: run.yaml
eventType: push
includedGitRefs: ^main$
ignoredGitRefs: dev-branch
serviceAccount: projects/my-project/serviceAccounts/my-service-account@my-project.
disabled: false
substitutions:
_NODE_VERSION_1: v6.9.1
REPO_NAME: dev
name
Wajib. Gunakan kolom name
pemicu untuk mengidentifikasi pemicu Anda. Nama pemicu hanya boleh berisi karakter alfanumerik dan tanda pisah, serta tidak boleh diawali atau diakhiri dengan tanda pisah. Nama pemicu tidak boleh lebih dari 64 karakter.
project
Opsional. Gunakan kolom project
untuk mengidentifikasi project Google Cloud tempat Anda mengaktifkan Cloud Build.
Defaultnya adalah project Secure Source Manager.
configFilePath
Opsional. Jalur ke file konfigurasi Cloud Build.
Nilai defaultnya adalah .cloudbuild/cloudbuild.yaml
.
eventType
Opsional. Jenis peristiwa yang akan dipicu. Opsinya adalah push
untuk mengirim ke
cabang yang dipilih atau pull_request
untuk permintaan pull ke cabang yang dipilih.
Nilai defaultnya adalah push
.
includedGitRefs
Opsional. Ekspresi reguler format RE2 yang cocok dengan referensi Git yang memicu build.
Defaultnya kosong. Kolom filter includedGitRefs
yang kosong menunjukkan bahwa tidak ada batasan.
Jika referensi Git tidak disertakan dalam kolom filter ignoredGitRefs
,
Secure Source Manager akan memeriksa kolom filter includedGitRefs
. Jika referensi Git ada di kolom filter includedGitRefs
, build akan dipicu. Jika kolom filter
includedGitRefs
tidak kosong, dan referensi Git tidak disertakan dalam kolom filter includedGitRefs
, build tidak akan dipicu.
ignoredGitRefs
Opsional. Ekspresi reguler format RE2 yang cocok dengan referensi Git yang tidak boleh memicu build.
Defaultnya kosong. Kolom filter ignoredGitRefs
yang kosong menunjukkan bahwa tidak ada batasan.
Secure Source Manager memeriksa kolom filter ignoredGitRefs
terlebih dahulu. Jika tidak kosong dan referensi Git cocok dengan kolom filter ignoredGitRefs
, build tidak akan dipicu.
serviceAccount
Wajib. Akun layanan Cloud Build yang akan digunakan untuk build.
Format: projects/PROJECT_ID/serviceAccounts/ACCOUNT
Ganti kode berikut:
PROJECT_ID
: dengan Google Cloud project ID tempat Anda membuat akun layanan.ACCOUNT
: dengan alamat email atau ID unik akun layanan.
includedFiles
Opsional. Ekspresi reguler format RE2 yang cocok dengan file yang harus memicu build saat diubah.
Jika file yang diubah tidak ada di kolom filter ignoredFiles
, dan file yang diubah cocok dengan kolom filter includedFiles
, build akan dipicu.
Defaultnya kosong. Kolom filter kosong menunjukkan bahwa tidak ada batasan.
ignoredFiles
Opsional. Ekspresi reguler format RE2 yang cocok dengan file yang tidak boleh memicu build saat diubah.
Jika kolom filter ignoredFiles
tidak kosong, commit yang hanya menyertakan file yang cocok dengan kolom filter ignoredFiles
tidak akan memicu build. Defaultnya adalah
kosong. Filter kosong menunjukkan bahwa tidak ada batasan.
disabled
Opsional. Boolean untuk menyetel apakah pemicu dinonaktifkan atau tidak. Nilai berupa true
atau false
.
Nilai defaultnya adalah false
.
substitutions
Gunakan substitusi dalam file pemicu untuk mengganti variabel tertentu pada waktu build dalam file konfigurasi Cloud Build.
Penggantian harus diawali dengan garis bawah, dan hanya dapat berisi huruf besar, garis bawah, dan angka, atau berupa salah satu variabel penggantian Secure Source Manager.
Secure Source Manager menyediakan variabel penggantian default berikut:
TRIGGER_NAME
: nama yang terkait dengan pemicu.COMMIT_SHA
: ID commit yang terkait dengan pemicu.REVISION_ID
: ID commit yang terkait dengan pemicu.SHORT_SHA
: tujuh karakter pertamaCOMMIT_SHA
.REPO_NAME
: nama repositori. Contoh:my-repo
.REPO_FULL_NAME
: jalur resource repositori, misalnya:projects/my-project/locations/us-central/repositories/test-repo
.REF_NAME
: nama cabang atau tag yang terkait dengan pemicu.TRIGGER_BUILD_CONFIG_PATH
: jalur ke file konfigurasi build yang digunakan selama eksekusi build Anda.
Untuk mengetahui informasi tentang cara menyertakan variabel penggantian Secure Source Manager dalam file konfigurasi Cloud Build, lihat Mengganti nilai variabel.
Langkah berikutnya
- Membuat file pemicu
- Pelajari lebih lanjut file konfigurasi Cloud Build dengan membaca Skema file konfigurasi build