J'essaie de configurer une configuration de pipeline multibranchhe où la case à cocher "Déployer" Boolean est en panne sur true
sur des branches de non-production et false
sur la construction de la production.
pipeline {
parameters{
booleanParam(defaultValue: true, description: 'Do deploy after build', name: 'DEPLOY')
Y a-t-il une méthode de réglage conditionnellement defaultValue=false
lorsque $BRANCH_NAME == "production"
?
Dans votre question, c'est un peu flou si BRANCH_NAME
fait référence à une variable d'environnement (comme dans env.BRANCH_NAME
) ou à un autre paramètre (comme dans params.BRANCH_NAME
).
Si d'abord, il y a des variables d'environnement, ce qui signifie qu'il y a un environnement, un nœud doit donc avoir été attribué à son environnement. Pour allouer un nœud, le pipeline doit commencer à courir. Pour commencer à exécuter, l'utilisateur doit sélectionner les paramètres pour exécuter le pipeline. C'est donc un problème de poulet et d'œufs: vous ne pouvez pas avoir une variable d'environnement avant de lancer des pipelines et vous devez déterminer les paramètres avant d'exécuter le pipeline.
Si ce dernier, et vous pensez à un cas où, peut-être, il y a un paramètre de chaîne qui passe au nom de BRANCH_NAME
et un paramètre booléen qui passe au nom de DEPLOY
, et sur la page Paramètres de la case DEPLOY
est décochée lorsque vous tapez maste
dans BRANCH_NAME
, mais une fois que vous appuyez sur le r
, cela devient magiquement vérifié ... alors cela pourrait être fait - avec beaucoup de douleur - en utilisant le plugin de choix actif.
Enfin, si ce que vous voulez, c'est empêcher tout déploiement de la succursale master
, vous pouvez vérifier à la fois le paramètre et le nom de la succursale avant de le déployer et de refuser de déployer si le paramètre est faux ou si la succursale est master
.