Cette page explique le schéma du fichier de déclencheurs Secure Source Manager. Pour obtenir des instructions sur la création d'un fichier de déclencheurs, consultez Créer un fichier de déclencheurs.
Un fichier de déclencheurs contient des instructions permettant à Secure Source Manager de déclencher les étapes définies dans un fichier de configuration Cloud Build en fonction d'un événement de requête push ou pull dans Secure Source Manager.
Vous pouvez configurer vos règles de protection des branches pour exiger une vérification de l'état réussie à partir de déclencheurs spécifiques. Pour en savoir plus sur la protection des branches, consultez Présentation de la protection des branches.
Structure d'un fichier de déclencheurs
Le fichier de configuration des déclencheurs doit être créé dans la branche par défaut de votre dépôt. Vous pouvez écrire le fichier de déclencheurs à l'aide de la syntaxe YAML.
Un fichier de déclencheurs a la structure suivante :
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
...
Chaque section nommée du fichier de déclencheurs définit la configuration Cloud Build à utiliser pour le type d'événement donné dans Secure Source Manager.
Déclencheurs
Un déclencheur spécifie le type d'événement Secure Source Manager que vous souhaitez utiliser pour déclencher l'exécution des étapes d'un fichier de configuration Cloud Build spécifique. Vous pouvez également spécifier les branches à surveiller pour l'événement indiqué.
Utilisez le champ name
du fichier de déclencheurs pour identifier un déclencheur. Voici un exemple de configuration que vous pouvez définir dans le fichier de déclencheurs :
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
Obligatoire. Utilisez le champ name
du déclencheur pour l'identifier. Les noms de déclencheurs ne peuvent contenir que des caractères alphanumériques et des tirets, et ne peuvent pas commencer ni se terminer par un tiret. Les noms de déclencheurs doivent comporter moins de 64 caractères.
project
Facultatif. Utilisez le champ project
pour identifier le projet Google Cloud dans lequel vous avez activé Cloud Build.
La valeur par défaut est le projet Secure Source Manager.
configFilePath
Facultatif. Chemin d'accès au fichier de configuration Cloud Build.
La valeur par défaut est .cloudbuild/cloudbuild.yaml
.
eventType
Facultatif. Type d'événement à déclencher. Les options sont push
pour les envois vers les branches sélectionnées ou pull_request
pour les demandes d'extraction vers les branches sélectionnées.
La valeur par défaut est push
.
includedGitRefs
Facultatif. Une expression régulière au format RE2 correspondant aux références Git qui déclenchent une compilation.
Par défaut, cette valeur n'est pas renseignée. Un champ de filtre includedGitRefs
vide indique qu'il n'y a aucune restriction.
Si la référence Git n'est pas incluse dans le champ de filtre ignoredGitRefs
, Secure Source Manager vérifie le champ de filtre includedGitRefs
. Si la référence Git se trouve dans le champ de filtre includedGitRefs
, une compilation est déclenchée. Si le champ de filtre includedGitRefs
n'est pas vide et que la référence Git n'est pas incluse dans le champ de filtre includedGitRefs
, aucune compilation n'est déclenchée.
ignoredGitRefs
Facultatif. Expression régulière au format RE2 correspondant aux références Git qui ne doivent pas déclencher de compilation.
Par défaut, cette valeur n'est pas renseignée. Un champ de filtre ignoredGitRefs
vide indique qu'il n'y a aucune restriction.
Secure Source Manager vérifie d'abord le champ de filtre ignoredGitRefs
. Si elle n'est pas vide et que la référence Git correspond au champ de filtre ignoredGitRefs
, aucune compilation n'est déclenchée.
serviceAccount
Obligatoire. Le compte de service Cloud Build à utiliser pour la compilation.
Format : projects/PROJECT_ID/serviceAccounts/ACCOUNT
Remplacez les éléments suivants :
PROJECT_ID
: avec l'ID du projet Google Cloud dans lequel vous avez créé le compte de service.ACCOUNT
: avec l'adresse e-mail ou l'ID unique du compte de service.
includedFiles
Facultatif. Expression régulière au format RE2 correspondant aux fichiers qui doivent déclencher une compilation lorsqu'ils sont modifiés.
Si les fichiers modifiés ne se trouvent pas dans le champ de filtre ignoredFiles
et qu'ils correspondent au champ de filtre includedFiles
, une compilation est déclenchée.
Par défaut, cette valeur n'est pas renseignée. Un champ de filtre vide indique qu'il n'y a aucune restriction.
ignoredFiles
Facultatif. Expression régulière au format RE2 correspondant aux fichiers qui ne doivent pas déclencher de compilation lorsqu'ils sont modifiés.
Si le champ de filtre ignoredFiles
n'est pas vide, les commits qui n'incluent que les fichiers correspondant au champ de filtre ignoredFiles
ne déclenchent pas de compilation. La valeur par défaut est vide. Un filtre vide indique qu'il n'y a aucune restriction.
disabled
Facultatif. Valeur booléenne permettant de définir si le déclencheur est désactivé ou non. Les valeurs sont true
ou false
.
La valeur par défaut est false
.
substitutions
Utilisez des substitutions dans votre fichier de déclencheurs pour remplacer des variables spécifiques au moment de la compilation dans votre fichier de configuration Cloud Build.
Les substitutions doivent commencer par un trait de soulignement et ne peuvent contenir que des lettres majuscules, des traits de soulignement et des chiffres, ou être l'une des variables de substitution Secure Source Manager.
Secure Source Manager fournit les variables de substitution par défaut suivantes :
TRIGGER_NAME
: nom associé au déclencheur.COMMIT_SHA
: ID de commit associé au déclencheur.REVISION_ID
: ID de commit associé au déclencheur.SHORT_SHA
: les sept premiers caractères deCOMMIT_SHA
.REPO_NAME
: nom du dépôt Exemple :my-repo
.REPO_FULL_NAME
: chemin d'accès à la ressource du dépôt, par exemple :projects/my-project/locations/us-central/repositories/test-repo
.REF_NAME
: nom de la branche ou du tag associé au déclencheur.TRIGGER_BUILD_CONFIG_PATH
: chemin d'accès au fichier de configuration de compilation utilisé lors de l'exécution de la compilation.
Pour savoir comment inclure des variables de substitution Secure Source Manager dans votre fichier de configuration Cloud Build, consultez Remplacer les valeurs des variables.
Étapes suivantes
- Créer un fichier de déclencheurs
- Pour en savoir plus sur les fichiers de configuration Cloud Build, consultez Schéma du fichier de configuration de compilation.