Jenkins 将构建参数传递给 email-ext 模板

2024-02-09

如何将构建参数传递给 email-ext jelly 模板? 在进行一些构建之前,我想放置不同的自定义消息/一些公告/非代码更改、决策等。我正在考虑将其作为构建参数,以便我看到一个屏幕,提示我输入如果我要手动构建,请发送消息。

编辑:我找到了一个解决方案,构建参数可用作环境变量,我有以下代码来访问环境变量:

   <j:set var="buildenv" value="${build.getEnvironment(listener)}"/>
   <j:set var="customMsg" value="${buildenv.get('customMsg')}"/>
   ${customMsg}

切换到 email-ext 常规电子邮件模板。

然后,复制样本groovy-html.template https://github.com/jenkinsci/email-ext-plugin/blob/master/src/main/resources/hudson/plugins/emailext/templates/groovy-html.template并通过添加以下脚本对其进行自定义 -

<%
  def parametersAction = build.getAction(ParametersAction.class)

  if (parametersAction != null)
  {
    for (p in parametersAction.parameters)
    {
      %><%=p.name%>=<%=p.value%><br/><%
    }                                               
  }
%>

看看hudson.model.ParametersAction http://javadoc.jenkins-ci.org/hudson/model/ParametersAction.html class.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jenkins 将构建参数传递给 email-ext 模板 的相关文章

随机推荐