当前位置: 首页 > 知识库问答 >
问题:

如何将上游作业的内部版本号传递给下游

诸葛立果
2023-03-14

我有2个自由式詹金斯工作,比如工作A(上游)和工作B(下游)。我想在作业 B 完成后发送可编辑的电子邮件。另外,我想在电子邮件内容和主题中使用作业名称,内部版本号和作业A的状态。任何人都可以帮我吗?

我尝试使用构建后步骤:“在其他项目上触发参数化构建”,并使用预定义参数作为:

UPSTREAM_BUILD_NUMBER=$BUILD_ID UPSTREAM_JOB_NAME=$JOB_ NAME

参数屏幕截图

在工作B中,在我使用的电子邮件正文中:$UPSTREAM_JOB_NAME,构建号-$UPSTREAM_BUILD_NUMBER已完成。请找到附加的测试结果。

但在电子邮件中,我收到了完全相同的句子“UPSTREAM_JOB_NAME美元,构建号-$UPSTREAM_BUILD_NUMBER已完成。请找到附加的测试结果。”而我期待的是“工作A,构建号-123已完成。请找到附加的测试结果。”

我不明白我是否遵循了正确的步骤。

共有1个答案

金令秋
2023-03-14

将 $BUILD_ID 替换为 ${BUILD_NUMBER},将 $JOB_NAME 替换为 ${JOB_NAME}

示例:

UPSTREAM_BUILD_NUMBER=${BUILD_NUMBER}, UPSTREAM_JOB_NAME=${JOB_NAME}

 类似资料:
  • 问题内容: 我要完成的工作是从分支中签出代码,将其合并到分支,构建,运行测试,如果测试成功则推送到分支。 测试应在需要的单独工作中运行。 我当前的设置如下: Job 从中检出,将其合并并构建 作业会在“ 后期制作”步骤中 触发作业(需要预先创建) 如果成功,则在 发布构建操作中推送到分支 __ 我尝试使用 Copy Artifact Plugin, 但是问题在于,在 Post构建步骤中 触发时,我

  • 问题内容: 我正在使用具有集成交付管道功能(https://jenkins.io/solutions/pipeline/)的Jenkins v2.1 来编排两个现有构建(构建和部署)。 在我的参数化构建中,我有3个用户参数设置,也需要在管道中选择该参数。 管道脚本如下: 除以外,此方法均正常运行。当我构建管道时,会引发以下错误: 如何解决此类型转换错误?甚至更好的是,有没有一种麻烦的方式可以将所有

  • 问题内容: 我有2个工作(A和B)。作业A指向URL-A上的git存储库。作业B指向URL-B上的另一个git repo。 作业A完成并稳定后,它将触发作业B并传递在作业A的构建中使用的git commit哈希。 最简单的方法是什么? (作业B对应于从URL-B中检出的脚本,该脚本具有2个参数:git commit哈希和JAR工件,这些工件将包装在Docker映像中并推送到Docker中心) 问题

  • 问题内容: 我正在通过Jenkins运行量角器测试用例,并使用SauceLabs作为执行环境。我正在使用量角器黄瓜框架。我想从Jenkins传递内部版本号,以便可以将其传递给SauceLabs来组织我的测试执行结果。 我尝试了这篇文章中提到的参数 https://moduscreate.com/blog/protractor_parameters_adding_flexibility_automa

  • 我使用的是Jenkins v2.1,它具有集成交付管道功能(https://jenkins.io/solutions/pipeline/)协调两个现有构建(构建和部署)。 在我的参数化构建中,我有3个用户参数设置,这些参数也需要在管道中选择。 管道脚本如下所示: 除了之外,这可以正常工作。当我构建管道时,会抛出以下错误: 如何解决此类型转换错误?或者更好的是,是否有一种不那么麻烦的方法,可以将所有

  • 问题内容: 我有一个名为 buildall 的管道作业,如下所示: 该 buildall 作业有25个参数。我想将所有 buildall 的参数传递给 job1 。有没有一种简单的方法可以代替手动指定每个参数呢? 在此问题中:向下游作业传递管道参数是一个子问题,但从未得到回答: 甚至更好的是,有没有一种麻烦的方法可以将所有管道参数传递给下游作业。 我有同样的问题。 问题答案: 以下似乎有效(尽管我