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}"
セットアップ:
しかし、私はまだ設定したい環境変数が認識されません。
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)
なぜ環境変数が認識されないのか、
などの変数を返してみることができます。 - 返す[FORMATED_BRANCH:$ {FORMATED_BRANCH}] – DevD
返すと、どのようにファイルから読み込むことができますか? EnvInjectにどのように渡すことができますか? – octavian
Quality Gatesプラグインでこの環境変数をどのように使用するかを明記してください。 –