如何在Jenkins电子邮件通知中获取环境变量?

如何在Jenkins电子邮件通知中获取环境变量?,jenkins,jenkins-plugins,Jenkins,Jenkins Plugins,在Jenkins作业配置中,我在构建部分的命令窗口中编写了一个bat脚本。在其中一个脚本命令中,我将环境变量设置为服务器计算机中的系统环境变量,如下所示: setx分析http://analysis_url/analysis/%analysis_id%.html 我现在的任务是将这个环境变量值返回给Jenkins,并将其包含在我的构建后通知电子邮件内容中。有简单的方法吗 在我的研究中,我遇到了插件envInject,但我认为它用于设置环境变量,对吗 更新1: 事实证明,该变量可以通过电子邮件内容

在Jenkins作业配置中,我在构建部分的命令窗口中编写了一个bat脚本。在其中一个脚本命令中,我将环境变量设置为服务器计算机中的系统环境变量,如下所示:

setx分析http://analysis_url/analysis/%analysis_id%.html

我现在的任务是将这个环境变量值返回给Jenkins,并将其包含在我的构建后通知电子邮件内容中。有简单的方法吗

在我的研究中,我遇到了插件envInject,但我认为它用于设置环境变量,对吗

更新1:

事实证明,该变量可以通过电子邮件内容中的一个简单的$Analysis_URL访问,然而,这引发了另一个问题,因为我的环境变量在每次作业构建后都会更改其值,但由于Jenkins只获取系统环境变量的副本,因此我在电子邮件内容中每次构建后都会获得相同的变量值,它只有在重新启动Jenkins后才会改变。有没有办法将更新后的系统环境变量发送给Jenkins

更新2:

EnvInject插件完成了我想要的工作。以下是我执行的步骤:

生成步骤批处理命令窗口:添加的命令: echo ANALYSIS\u URL=$ANALYSIS\u URL>my.properties

构建步骤注入环境变量:字段内属性文件路径 $WORKSPACE/my.properties

生成后操作:可编辑电子邮件通知,字段默认内容:
当前分析url:$analysis\u url

您是否尝试使用env.analysis\u url访问您的环境变量?

在生成后电子邮件中打印变量:

将此添加到build:executeshell部分: 将此添加到属性文件路径下的“注入环境变量”部分: 对第二个文件${WORKSPACE}/distinctcount.txt也执行同样的操作,因为我有两个变量

注1:${WORKSPACE}是jenkins的pwd,并列出了位置

注2:通过使用echo distinctcount=$distinctcount>>count.txt,实际上可以将两个变量放在一个文件中

调用可编辑电子邮件通知的默认内容部分中的变量: 注 确保您始终在电子邮件设置底部的“高级设置”下进行电子邮件设置,否则它仅在首次成功或任何失败时发送电子邮件:


你可以使用:${yourDefinedVriableName}

你能详细说明你的答案吗,我是詹金斯的新手。谢谢。我甚至不确定这是否有效,但例如,您可以使用env.PATH访问PATH变量。例如:env.PATH=C:\\test和另一个命令echo${env.PATH}。因此,如果这有效,您可以在帖子部分中使用:${env.Analysis\u URL}value。我已将您的建议标记为答案,因为它为我提供了一些解决问题的提示。您可以进一步澄清此答案吗?或者@sadrab你能解释一下你是怎么解决这个问题的吗?这个方法有效,有一个输入错误,$wordspace/my.properties应该是$WORKSPACE/my.properties
echo count=$count > count.txt
echo distinctcount=$distinctcount > distinctcount.txt
${WORKSPACE}/count.txt
Count total:$count Distinct Count: $distinctcount