Jenkins:将 GIT_BRANCH 环境变量传递给升级

标签 jenkins jenkins-plugins

我想在促销成功后发送一封包含构建详细信息的邮件。如何访问邮件中的 $GIT_BRANCH 变量?
来自 here ,我知道我们可以在构建期间使用 $GIT_BRANCH 变量,但由于升级步骤是在构建之后,我无法使用此变量。

最佳答案

我不知道该怎么做,但我可以告诉你我是如何解决同样的问题的:

在有晋升的工作中,在构建结束时我执行

echo $GIT_BRANCH > git_branch

我将 git_branch 归档为构建工件。

当此作业的构建得到升级时,升级过程会触发另一个作业。

在另一个作业中,我使用 Copy Artifact 构建步骤从提升的作业中获取文件 git_branch。在“哪个版本”中,我配置“由永久链接指定”并作为永久链接“最新促销:(促销名称)”

这种方法的额外好处是,无论我想采取什么操作,我都可以在单独作业的单独工作区中完成它们。您可能知道,升级是异步运行的,并使用升级作业的工作区,因此无法保证工作区存在或工作区的内容是什么。在那里做任何事情甚至可能与当前正在运行的另一个构建发生冲突。在另一份工作的背景下进行与晋升相关的行动要安全得多。

关于Jenkins:将 GIT_BRANCH 环境变量传递给升级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23562095/

相关文章:

jenkins - 通过脚本更改现有 Jenkins 节点上的执行器数量

Jenkins - Jenkins 电子邮件中的构建日期

docker - Jenkins Kubernetes 插件无法配置 jnlp-slave pod

jenkins - 如何使用新链接和图标扩展 Jenkins 工作页面

jenkins - 当远程 Jenkins 作业完成时触发 Jenkins 构建

linux - 由于进程 "/var/tmp/bbb/bbb",jenkins 自动终止

gradle - Gradle:无法创建com.android.build.gradle.internal.dsl.SigningConfig_Decorated类型的实例

c++ - SonarQube 不分析 C++ 代码并显示警告文件不在项目目录下

删除工作区后,Jenkins TFS 插件无法再次检索源

Jenkins hack 使用 svn export 而不是 svn checkout?