EnvInject不读环境变量
问题描述:
在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)
任何想法为什么环境变量不被识别?
你可以尝试返回该变量,例如: - return [FORMATED_BRANCH:$ {FORMATED_BRANCH}] – DevD
如果我返回它,那我该如何从文件中读取它?我怎样才能将它传递给EnvInject? – octavian
请提供您如何在Quality Gates插件中准确使用此环境变量。 –