Questa pagina spiega lo schema del file dei trigger di Secure Source Manager. Per istruzioni sulla creazione di un file di trigger, consulta Creare un file di trigger.
Un file di trigger contiene istruzioni per Secure Source Manager per attivare i passaggi definiti in un file di configurazione di Cloud Build in base a un evento di richiesta push o pull in Secure Source Manager.
Puoi configurare le regole di protezione dei rami in modo che richiedano un controllo dello stato riuscito da trigger specifici. Per scoprire di più sulla protezione dei rami, leggi la Panoramica della protezione dei rami.
Struttura di un file di trigger
Il file di configurazione dei trigger deve essere creato nel ramo predefinito del repository. Puoi scrivere il file dei trigger utilizzando la sintassi YAML.
Un file di attivatori ha la seguente struttura:
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
...
Ogni sezione denominata del file di attivatori definisce la configurazione di Cloud Build da utilizzare per il tipo di evento specificato in Secure Source Manager.
Trigger
Un trigger specifica il tipo di evento Secure Source Manager che vuoi utilizzare per attivare il completamento dei passaggi in un file di configurazione Cloud Build specifico. Puoi anche specificare i rami monitorati per l'evento specificato.
Utilizza il campo name
nel file dei trigger per identificare un trigger. Ecco un esempio del tipo di configurazione che potresti impostare nel file dei trigger:
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.iam.gserviceaccount.com
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.iam.gserviceaccount.com
disabled: false
substitutions:
_NODE_VERSION_1: v6.9.1
REPO_NAME: dev
name
Obbligatorio. Utilizza il campo name
del trigger per identificarlo. I nomi dei trigger possono contenere solo caratteri alfanumerici e trattini e non possono iniziare o terminare con un trattino. I nomi dei trigger devono essere inferiori a 64 caratteri.
project
Facoltativo. Utilizza il campo project
per identificare il progetto Google Cloud in cui
hai attivato Cloud Build.
Il valore predefinito è il progetto Secure Source Manager.
configFilePath
Facoltativo. Percorso del file di configurazione di Cloud Build.
Il valore predefinito è .cloudbuild/cloudbuild.yaml
.
eventType
Facoltativo. Il tipo di evento da attivare. Le opzioni sono push
per i push ai
rami selezionati o pull_request
per le richieste di pull ai rami selezionati.
Il valore predefinito è push
.
includedGitRefs
Facoltativo. Un'espressione regolare in formato RE2 che corrisponde ai riferimenti Git che attivano una build.
Il valore predefinito è vuoto. Un campo di filtro includedGitRefs
vuoto indica che non ci sono restrizioni.
Se il riferimento Git non è incluso nel campo del filtro ignoredGitRefs
,
Secure Source Manager controlla il campo del filtro includedGitRefs
. Se il riferimento Git
si trova nel campo del filtro includedGitRefs
, viene attivata una build. Se il campo
includedGitRefs
del filtro non è vuoto e il riferimento Git non è
incluso nel campo includedGitRefs
del filtro, non viene attivata una build.
ignoredGitRefs
Facoltativo. Un'espressione regolare in formato RE2 che corrisponde ai riferimenti Git che non devono attivare una build.
Il valore predefinito è vuoto. Un campo di filtro ignoredGitRefs
vuoto indica che non ci sono restrizioni.
Secure Source Manager controlla prima il campo del filtro ignoredGitRefs
. Se non è vuoto e il riferimento Git corrisponde al campo del filtro ignoredGitRefs
, non viene attivata una build.
serviceAccount
Obbligatorio. Il service account Cloud Build da utilizzare per la build.
Formato: projects/PROJECT_ID/serviceAccounts/ACCOUNT
Sostituisci quanto segue:
PROJECT_ID
: con l'ID progetto Google Cloud in cui hai creato il account di servizio.ACCOUNT
: con l'indirizzo email o l'ID univoco del service account.
includedFiles
Facoltativo. Un'espressione regolare in formato RE2 che corrisponde ai file che devono attivare una build quando vengono modificati.
Se i file modificati non si trovano nel campo del filtro ignoredFiles
e corrispondono al campo del filtro includedFiles
, viene attivata una build.
Il valore predefinito è vuoto. Un campo filtro vuoto indica che non sono presenti limitazioni.
ignoredFiles
Facoltativo. Un'espressione regolare in formato RE2 che corrisponde ai file che non devono attivare una build quando vengono modificati.
Se il campo del filtro ignoredFiles
non è vuoto, i commit che includono solo i file
che corrispondono al campo del filtro ignoredFiles
non attiveranno una build. Il valore predefinito è
vuoto. Un filtro vuoto indica che non ci sono restrizioni.
disabled
Facoltativo. Un valore booleano per impostare se il trigger è disattivato o meno. I valori sono true
o false
.
Il valore predefinito è false
.
substitutions
Utilizza le sostituzioni nel file dei trigger per sostituire variabili specifiche in fase di build nel file di configurazione di Cloud Build.
Le sostituzioni devono iniziare con un trattino basso e possono contenere solo lettere maiuscole, trattini bassi e numeri oppure essere una delle variabili di sostituzione di Secure Source Manager.
Secure Source Manager fornisce le seguenti variabili di sostituzione predefinite:
TRIGGER_NAME
: il nome associato al trigger.COMMIT_SHA
: l'ID commit associato al trigger.REVISION_ID
: l'ID commit associato al trigger.SHORT_SHA
: i primi sette caratteri diCOMMIT_SHA
.REPO_NAME
: il nome del repository. Ad esempio:my-repo
.REPO_FULL_NAME
: il percorso della risorsa del repository, ad esempio:projects/my-project/locations/us-central/repositories/test-repo
.REF_NAME
: il nome del ramo o del tag associato al trigger.TRIGGER_BUILD_CONFIG_PATH
: il percorso del file di configurazione della build utilizzato durante l'esecuzione della build.
Per informazioni su come includere le variabili di sostituzione di Secure Source Manager nel file di configurazione di Cloud Build, consulta Sostituzione dei valori delle variabili.
Passaggi successivi
- Creare un file di trigger
- Scopri di più sui file di configurazione di Cloud Build leggendo Schema del file di configurazione della build