2017-06-15 12 views
0

ParentJobChildJobという2つのジョブがあります。 ParentJobがダウンストリームジョブChildJobをトリガーします。 ParentJobからJenkins DSL booleanCondition()がtrueを返してもtrueを返さない

私はChildJobのパラメータページで

conditionalSteps { 
     condition { 
     booleanCondition("RELEASE") 
     steps { 
      shell("echo 'Wow !!! condition is parsed as true'") 
     } 
     } 

などのパラメータを選んでいますChildJob

parameters { 
      predefinedProp('RELEASE','true') 
      } 

として変数を渡しています、私はそれのように正確に来るのを見ることができますtrue

enter image description here

まだshell("echo 'Wow !!! condition is parsed as true'")行が実行されていません。ログでは、私が見ることができます:

09:35:41 Run condition [Boolean condition] enabling prebuild for step [BuilderChain] 
09:35:41 [Boolean condition] checking [RELEASE] against [^(1|y|yes|t|true|on|run)$] (origin token: RELEASE) 
09:35:41 Run condition [Boolean condition] preventing perform for step [BuilderChain] 
09:35:41 Finished: SUCCESS 

を私もParentJob仕事からfalse、まだ同じ結果として渡してみました。私は間違って何をしていますか?

答えて

0

私は間違ってトークンにアクセスしていましたが、正しい方法はbooleanCondition('${RELEASE}')です。

これは、適切な方法でなければなりません:

conditionalSteps { 
     condition { 
     booleanCondition('${RELEASE}') 
     steps { 
      shell("echo 'Wow !!! condition is parsed as true'") 
     } 
     } 
    } 
関連する問題