预发送脚本如何检索参数化 Jenkins 作业的参数?

2024-04-22

我想根据参数化作业的布尔参数值取消电子邮件发送。该参数名为“skip.email”。

我尝试编写包含以下内容的预发送脚本,但它不起作用:

def env = System.getenv()
logger.println("Should I skip email ? " + env['skip.email'])
cancel = env['skip.email']

这是我在日志中看到的内容:

Should I skip email ? null

我尝试打印出所有环境变量,但参数化 Jenkins 作业的所有参数都不在列表中。

请帮帮我,先谢谢你了!


预发送脚本提供了一个名为“build”的变量,该变量的类型继承自抽象构建 http://javadoc.jenkins-ci.org/hudson/model/AbstractBuild.html#getBuildVariables()。使用获取构建变量 http://javadoc.jenkins-ci.org/hudson/model/AbstractBuild.html#getBuildVariables()方法来检索包含参数化变量的 Map。

Example

我有一个名为“target”的参数化变量,它描述了部署环境。我希望仅当目标环境是 QA 的环境时才将电子邮件发送给 QA。

if (!build.getBuildVariables().get("target").equals("qa")) {   
  // cancel variable cancels the email send when set to true
  cancel = true
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

预发送脚本如何检索参数化 Jenkins 作业的参数? 的相关文章

随机推荐