2017-10-11 12 views
0

Je souhaite écrire une fonction (dans un job DSL jenkins) qui renvoie un ensemble de paramètres réutilisable pour les définitions de travail. Comme ceci:Job Jenkins DSL: Création d'un objet paramètre dans la fonction

def pars(name) { 
    return parameters { 
     booleanParam(name, true) 
    } 
} 

pipelineJob("Test1") { 
    pars("name") 
} 
pipelineJob("Test2") { 
    pars("name2") 
} 

Cela ne fonctionne pas, mais je peux réécrire en quelque sorte l'exemple pour que cela ne fonctionne?

Répondre

1

parameters ne peut pas être appelée dans votre méthode d'assistance, mais vous pouvez créer une fermeture dans une méthode d'assistance.

Essayez ceci:

def pars(name) { 
    return { 
    booleanParam(name, true) 
    } 
} 

pipelineJob("Test1") { 
    parameters pars("name") 
} 

Ou ceci:

def pars(name) { 
    return { 
    parameters { 
     booleanParam(name, true) 
    } 
    } 
} 

pipelineJob("Test1").with pars("name")