2017-10-02 4 views
5

J'ai un pipeline très long et complexe que je réécriture après jenkins importante mise à jour. Ce que j'aimerais, c'est déclarer mes étapes en tant que variables, puis les exécuter dans le corps du nœud principal: je peux le faire facilement pour les étapes parallèles, mais je veux avoir le même style aussi pour les séquentielles . Après de nombreux tests, la seule façon de faire ce travail consistait à utiliser des appels parallèles "faux" autour de tous les stades séquentiels simples (moche), je suis sûr qu'il y a une meilleure solution mais il me semble que je peux t trouver le bon pas ... honte à moi.Jenkins Pipeline Exécuter une fermeture (comme à l'étape « parallèle »)

Voici mon exemple:

stage1 = { stage("one") { 
      println "stage one" 
     } } 

stage2 = { stage("two") { 
      println "stage two" 
     } } 

stage3 = { stage("three") { 
      println "stage three" 
     } } 

node { 
    parallel (
     "one" : stage1 , 
     "two" : stage2 
    ) 
    HERE I WANT TO CALL stage3 Closure, possibly giving a map like in the parallel above 
} 

Répondre

0

Vous devriez être en mesure de le faire avec la méthode run.

stage3.run()

Je ne sais pas si cela est sûr à utiliser.