【问题标题】:Add SVN_AUTHOR and SVN_COMMIT_MESSAGE as env var in JENKINS在 JENKINS 中添加 SVN_AUTHOR 和 SVN_COMMIT_MESSAGE 作为环境变量
【发布时间】:2014-10-06 12:03:23
【问题描述】:

在我的 JENKINS 作业配置中,我会在构建完成后向开发人员发送一封电子邮件。

在这封邮件中我发送:$PROJECT_NAME$BUILD_NUMBER$BUILD_STATUS$BUILD_URL$SVN_REVISION

我使用 电子邮件扩展插件 v 2.38.1

在我的电子邮件正文中,我想添加:SVN_AUTHORSVN_COMMIT_MESSAGE

JENKINS 中不存在这样的环境变量。那么有可能创建它们吗?用什么插件?

伊斯梅尔

【问题讨论】:

    标签: java svn jenkins continuous-integration environment-variables


    【解决方案1】:

    点击Content Token Reference旁边的问号,它会告诉你很多你可以使用的东西。

    试试这个:

    ${CHANGES_SINCE_LAST_SUCCESS, reverse=true, format="<b>Changes for Build #%n</b><br>%c<br>", changesFormat="<br>[%a] - (%r) %p<br> %m<br>"}

    这将产生如下输出:

    版本 #123 的更改
    [svn-author-name] - (svn-rev) 更改文件的路径
    svn 提交信息在这里

    这是文档中的相关部分:

    格式 - 对于列出的每个提交,一个包含 %X 的字符串,其中 %X 是 %a 代表作者、%d 代表日期、%m 代表消息、%p 代表路径或 %r 代表修订版本之一。并非所有修订系统都支持 %d 和 %r。如果指定,则忽略 showPaths。 默认为“[%a] %m\n”。

    以上内容与Email-ext plugin 相关,足以满足您在问题中描述的内容。

    但是,如果您真的想将这些作为环境变量提供给其他构建步骤和/或脚本,您需要:

    • 从您的 SCM 中手动提取它们(可能使用 svn log 命令和一些 grepping/sedding/awking)
    • 将输出保存到文件,格式为param=value
    • 使用 EnvInject plugin 构建步骤将文件加载为其他构建步骤/脚本的环境变量

    【讨论】:

      猜你喜欢
      • 2017-11-21
      • 2016-12-16
      • 1970-01-01
      • 1970-01-01
      • 2021-04-29
      • 2016-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多