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)
任何想法爲什麼環境變量不被識別?
你可以嘗試返回該變量,例如: - return [FORMATED_BRANCH:$ {FORMATED_BRANCH}] – DevD
如果我返回它,那我該如何從文件中讀取它?我怎樣才能將它傳遞給EnvInject? – octavian
請提供您如何在Quality Gates插件中準確使用此環境變量。 –