0

jenkinsビルドフローで3つのジョブが設定されています。 b1〜b2のタスク、b2〜b3の変数などがあります。jenkinsビルドフローで生成された変数を使用して、それらを同じジェンキンズビルドフローで次のジョブに使用する方法

list = ["foo", "bar"] 

b1 = build("ExecuteJob1", param1: list[idx]) 
b2 = build("ExecuteJob2", param1: <some dynamic variable from b1>) 
b3 = build("ExecuteJob3", param1: <some dynamic variable from b2>, param2: some dynamic variable from b1) 

上で指定したように、ポストビルドアクションの一部として、それぞれ前のジョブによって生成される動的変数は(ある - 私は1つの動的変数を生成するために1つのインスタンスでdescription setterプラグインを使用していますし、他の私はBUILD_URLをしたいですb3の中で使用するb1の番号

これを達成するために、私はこのlinkにある投稿に出て、EnvInject Pluginを使いました。私は次のことを行う、これを使用して -

  1. 私はB1との間にいくつかの時間を与え、後条件ジョブとしてそのenvInjジョブを使用する環境
  2. にそれらの動的変数を注入するために、ジョブ(envInj)を作成しましたb1とb2を使用して、b2が始まる前に条件付きジョブが実行されるようにします。
  3. 環境に必要な変数を実際に注入します(コンソールログとenvInjジョブの環境変数でチェックされている場合)。

しかし、私が直面している問題は、新たに注入された変数がb2にアクセスできず、同じケースがb3であることです。

だから、これらのb1変数をb2に取得するオプションがありますか(そうであるかなど)、あるいは目的を達成するためのより良い方法がありますか?

答えて

0

上記のリンクに@Daveバッハーで指定されたように私は私がPost Build Taskプラグインでバッチスクリプトを使用してファイルにパラメータをダンプし、

  1. を上記の質問のためのソリューションを得ました。
  2. このファイルは、EvnInj pluginを使用して環境に注入されました。
  3. これは私がビルドの流れの他のジョブ

    b1 = build("ExecuteJob1", param1: list[idx]) 
    b2 = build("ExecuteJob2", param1: b1.dynamicVariableX) 
    b3 = build("ExecuteJob3", param1: b1.dynamicVariableY, param2:nb2.dynamicVariableZ) 
    

でこれらのパラメータへのアクセスを許可これは完全に環境

を通じて動的変数にアクセスできるように動作します
関連する問題