使用配置系统>扩展电子邮件通知配置在Jenkins我想添加我的工作的描述(目前在http://my-jenkins.org/job/myjob页面)到构建失败电子邮件的默认内容。
是否有任何$PROJECT_DESCRIPTION变量,我可以使用?或者可以使用Jelly/Groovy脚本来实现?
谢谢!
正如Zloj所说,Jenkins没有这样的变量,但是你可以自定义你自己的。Jenkins有一个插件可以通过
设置环境变量Envfile插件
grep -o '<description>.*</description>' /var/lib/jenkins/jobs/your_job_here/config.xml | sed 's/(<description>|</description>)//g'
保存在文件中,例如:/tmp/ENV
如果description的内容是"Hello world"
cat /tmp/ENV
$PROJECT_DESCRIPTION=Hello World
现在在你的电子邮件中添加$PROJECT_DESCRIPTION
对于动态更新的描述,我有一个变通方法,直到我找到一个更好的解决方案…创建一个shell脚本"wrapper.sh"
猫wrapper.sh#!/bin/bash
echo "PROJECT_DESCRIPTION=`grep -o '<description>.*</description>' /var/lib/jenkins/jobs/your_job_here/config.xml | sed 's/(<description>|</description>)//g'`" > /tmp/env
这个脚本动态创建env文件。
现在安装ManagedScript插件:-
按照上面的链接创建一个托管脚本文件,其中包含以下内容
sh /tmp/wrapper.sh
现在进入你的项目配置:-
1)。在Build选项下添加"执行托管脚本并选择您在上一步中创建的脚本
"2)。应用并保存
瞧。
没有这样的环境变量,但您可以自己设置:
${JENKINS_HOME}/jobs/${JOB_NAME}/config.xml
作为第一个条目之一,包含一个名为"description"的XML标记。将其解析为一个变量,然后通过e-mail ext将其添加到电子邮件正文中。