2017-07-12 2 views
1

J'écris un plugin jenkins et je veux avoir une case à cocher, qui me permettra, dans mon cas, de dire à Jenkins d'écraser la compilation, mais seulement une fois.Configurer une valeur unique (case à cocher) qui se réinitialise par défaut?

J'ai donc une case à cocher 'Overwrite', je la vérifie et lance une build, disons # 3. Je fais le réécriture que je veux, mais sur la construction n ° 4 ce n'est pas le cas et la case à cocher sera à nouveau décochée.

Est-il possible de modifier le réglage dans la configuration du travail à partir du code? Réinitialiser à la valeur par défaut ou quelque chose de similaire?

Merci, Mike

+0

Je ne comprends pas. Exécutez-vous manuellement la construction lorsque vous cochez cette case? – talex

Répondre

0

Pour répondre à la question talex: J'ai un travail qui s'exécute tous les jours avec des paramètres par défaut. De temps en temps, je peux vouloir le déclencher manuellement, avec des paramètres différents. C'est un problème, d'aller dans la page de configuration, de modifier les paramètres, de déclencher le travail et une fois cela fait, revenez à config pour revenir en arrière.

Merci à tous, j'ai pu réaliser cette fonctionnalité avec "Parameterized Build".

Je suppose que la solution de SniperJoe fonctionnerait aussi bien, mais c'était plus facile et plus rapide et je n'avais pas beaucoup de temps pour ça.

0

Une combinaison de méthodes de Jelly et Java devrait remédier à ce problème. Dites si vous aviez la case à cocher:

<f:checkbox name="start" checked="${it.start}"/> 

Ensuite, la méthode public boolean getStart(), contenu dans votre code Java dicte ce que la valeur booléenne start a. Puisque vous voulez éditer start après la fin d'une construction, je vous recommande d'écrire une classe qui étend la classe Publisher de Jenkins.