Voici ma configuration actuelle de Jenkins pour un projet:
Cette configuration me permet d’avoir une livraison automatisée en continu ainsi qu’un retour constant pendant le développement. Les 3 premiers travaux exécutent également tous les tests et les rapports de couverture.
Le problème est que je ne pouvais pas trouver un moyen d'exclure la branche principale du travail "toutes les branches de développement". Il crée inutilement maître deux fois à chaque fois que je fusionne une demande d'extraction.
Est-ce que quelqu'un sait comment exclure une branche du travail à Jenkins?
ps: J'utilise les plugins Git et Github. Mon projet est stocké sur Github.
Vous pouvez choisir une stratégie "inverse" pour cibler les branches à créer.
Découvrez la configuration du travail Jenkins,
(N'oubliez pas de renseigner le champ "Branches à construire" par "maître")
Voir aussi l'image de capture d'écran jointe:
Vous pouvez utiliser :^(?!.*master).*$
comme spécificateur de branche dans Jenkins et toutes les branches sauf la structure principale seront générées. Voir la réponse: https://stackoverflow.com/a/18709097/444639
Vous pouvez utiliser Repository, filtrer par nom (caractère générique). Ici, il suffit de fournir: ^ (?! .master). $ .
ou vous pouvez utiliser la branche de filtre en utilisant un caractère générique et exclure le maître là: lors de l’analyse réussie mais supprimée ultérieurement de l’analyse du dossier de l’organisation au cas où vous utiliseriez github ou un projet d’équipe bitbucket .
La réponse de @ Mike fonctionnerait pour la plupart, mais notez que :^(?!.*master).*$
correspond à tout ce qui ne contient pas de maître, c'est-à-dire qu'une branche appelée feature/add-remaster-functionality
ne sera pas construite également. Une meilleure façon serait :^(?!.*^master$).*$
qui correspond uniquement au maître, ou même :^(?!.*^(master|Origin/master)$).*$
qui correspond au maître ou à l'origine/maître.