2017-02-13 14 views
0

Jenkinsでは、動的環境変数を設定しようとしています。EnvInjectが環境変数を読み取らない

私はScriptlerを使用してGroovyスクリプトを作成し、その結果をファイルに書き込みました。

次に、EnvInjectを使用して、そのファイルの内容を読み取りました。

のGroovyスクリプト:

import jenkins.model.* 

def GB = build.getEnvVars()["GIT_BRANCH"] 
def FORMATED_BRANCH = "com.my.package%3Amy-project%3A" + "${GB}".replace("/", "%2F") 

def file = new File('groovyFile') 
file.write "FORMATED_BRANCH=${FORMATED_BRANCH}" 

セットアップ:

enter image description here

しかし、私はまだ設定したい環境変数が認識されません。

javax.servlet.ServletException: quality.gates.jenkins.plugin.QGException: Environment variable with name 'FORMATED_BRANCH' does not exist. 
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:796) 
    at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876) 
    at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:236) 
    at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58) 
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746) 

なぜ環境変数が認識されないのか、

+0

などの変数を返してみることができます。 - 返す[FORMATED_BRANCH:$ {FORMATED_BRANCH}] – DevD

+0

返すと、どのようにファイルから読み込むことができますか? EnvInjectにどのように渡すことができますか? – octavian

+0

Quality Gatesプラグインでこの環境変数をどのように使用するかを明記してください。 –

答えて

0

このプラグインの問題が発生しましたJENKINS-39638 "プロジェクト変数として環境変数を使用できません"。

関連する問題