从调用的构建流程作业中,我尝试了两种方法:
build.environment['AOEU'] = 'aoeu' // callee would `println called.environment['AOEU']`
和:
upstream.environment['AOEU'] = 'aoeu' // callee would `println build.environment['AOEU']`
没有运气。
我也为此付出了很多努力,却发现没有干净的方法可以做到这一点。我终于EnvInjectPlugin以某种丑陋的方式来做到这一点。
EnvInjectPlugin
def buildEnv = build.getEnvVars(); varsToAdd = [:] // add here your custom properties buildEnv.putAll(varsToAdd) import org.jenkinsci.plugins.envinject.EnvInjectPluginAction def envInjectAction = build.getAction(EnvInjectPluginAction.class); envInjectAction.overrideAll(buildEnv)
… EnvInject插件神奇
我首先尝试实现EnvironmentContributingAction 并将其添加为,build.addAction(...)但由于未知原因对我不起作用。
build.addAction(...)
确保在调用的作业中设置“ Flow run需要一个工作区”。