2016-02-11 1 views
0

Dans Jenkins on peut utiliser le plugin de paramètre Cascading Dynamic Choice, ie si paramter1 est un simple paramètre de choix (disons que le nom du paramètre est targetEnv) avec les valeurs de choix étant int, qa, int-test etc par ligne et si je sélectionne la valeur 'int', alors je peux utiliser le paramètre de choix dynamique en cascade pour ajuster les valeurs cibles de mon second paramètre pour ex: targetEnvServer à quoi que ce soit à l'exécution que je vais défini pour cet environnement "int" uniquement.Jenkins - Plugin en cascade - Auto évaluation ne passe pas au second niveau

Ceci est utile comme si un utilisateur sélectionne tout autre environnement « qa » pour les ex, la valeur change de targetEnvServer paramètre change automatiquement dès que la sélection dans le premier paramètre (paramètre de choix) de int à quelque chose autre. Tout ce que nous devons nous assurer, c'est que la partie Groovy pour retourner une valeur valide (list) est écrite dans la section Groovy code de la configuration du plug-in Cascading Dynamic Choice Parameter pour l'environnement sélectionné par l'utilisateur dans le paramètre targetEnv.

Pour cette première et la deuxième variable (où la deuxième valeur de la variable dépend de la valeur de la valeur premier paramètre) fonctionne très bien!, MAIS il est pas travailler s'il y a aussi un 3ème paramètre (de type Cascading dynamique Choix des paramètres plug-in où le paramètre parent est également un type de paramètre Choix dynamique Cascading) ex: restoreDateTime2 qui dépend du 2ème paramètre (qui était à nouveau dépendant de paramter1 targetEnv et était un Plug-in Paramètre de choix dynamique en cascade ().

Cette image montre la configuration du travail de jenkins: enter image description here

Cette image montre ce qui se passe lorsque vous cliquez sur Construire avec des paramètres et une erreur est émise. ERREUR: Formulaire structuré Élément non trouvé: somevariable

enter image description here

Cette image montre ce qui se passe lorsque vous modifiez la sélection d'une valeur à l'autre pour le premier paramètre

enter image description here

Comment puis-je obtenir un comportement de paramètre de choix dynamique en cascade qui se passe avec succès entre le paramètre 1 et le paramètre 2 ... pour le paramètre 3 également (lorsque la valeur du paramètre 2 change en raison d'un changement de sélection pour le paramètre er1)?

Répondre

0

En utilisant Jenkins Active Choices Plugin J'ai été capable de réaliser ce que je cherchais mais le problème avec le plug-in Cascading Choice existe toujours.

Le plugin Active choices prend en charge 3 types de paramètres et prend en charge les variables de référence multiniveaux pour remplir les valeurs des variables (lorsqu'un paramètre dépend d'un autre paramètre/reference). La documentation disponible sur le site du plugin Jenkins pour le plugin Active Choices est assez bonne pour essayer le scénario mentionné ci-dessus et cela a bien fonctionné.

J'ai dû écrire un petit morceau de code Groovy pour aller chercher les données après avoir utilisé la variable de référence et l'utiliser pour aller chercher des données soit sur le dossier maître Jenkins soit sur un dossier de machine distante.