Nous avons un projet dans un dépôt Github avec plusieurs Jenkinsfiles:
my-project
app
Jenkinsfile
lib1
Jenkinsfile
lib2
Jenkinsfile
Nous avons créé 3 pipelines Jenkins, chacun faisant référence à un fichier Jenkins .
Question: Comment éviter de déclencher les pipelines "app" et "lib1" quand il y a un nouveau commit dans "lib2"? Nous ne voulons pas exécuter N jobs chaque fois qu'un commit est exécuté.
J'ai vu que le problème est traité dans https://issues.jenkins-ci.org/browse/JENKINS-43749 , mais je n'y ai pas trouvé de solution.
Vous pouvez le faire de 2 manières:
a) Configurez vos travaux de construction en ajoutant "Additional Behavior" -> "Polling ignorer les validations dans certaines régions" Ce comportement vous permettra d'ajouter des "régions en liste blanche" ou "des listes noires de régions" que vous ne souhaitez pas interroger pour le déclenchement le travail de construction.
b) Écrivez un script shell personnalisé pour vérifier les fichiers modifiés par validation et vérifier l'emplacement. Ce script shell peut ensuite être ajouté à votre fichier Jenkins et, qu’il soit déclaratif ou scripté, vous pouvez modifier le comportement en conséquence.
Je recommanderai l'option a) car il est plus simple à configurer et à maintenir. J'espère que cela t'aides.