我在詹金斯有一个FreeStyle项目。构建的一部分是“执行Groovy脚本”构建步骤(重要的是:不是“执行系统 Groovy脚本”步骤-不起作用)。
稍后在其他构建步骤中需要脚本执行的计算。如何在所有步骤中使用变量?是否可以在稍后执行的“ Execute Groovy脚本”中设置环境变量?
我已经尝试使用
import hudson.EnvVars
import hudson.model.*;
...
def envvars = ['envVarName': 'envVarValue']
build.environments.add(0, Environment.create(new EnvVars(envvars)))
但是在非系统常规步骤中找不到'build'。
有什么想法吗?
非常感谢:) ian
答案 0 :(得分:1)
execute groovy脚本步骤仅在代理上运行groovy脚本。这与在代理上运行shell脚本的想法相同:它不在Jenkins主服务器中运行,因此没有Jenkins构建环境的概念。如果希望此步骤将信息传递给下一个步骤,则最简单的方法可能是将要共享的值写入工作空间中的文件。