【问题标题】:Jenkins 'Trigger/call builds on other projects' with current project versionJenkins“触发器/调用构建在其他项目上”与当前项目版本
【发布时间】:2023-04-04 04:03:01
【问题描述】:

在我的构建完成后 (project1) 我想触发另一个构建 (project2) 添加 project1 的项目版本作为参数。

为此,我正在使用 Jenkins 构建步骤“在其他项目上触发/调用构建”。

我将以下配置为预定义参数:

结果是 project.one.version 设置为 project2 而不是 project1 的项目版本。似乎该物业在第一次建造期间并未解散,而是在第二次建造期间。

对处理这种情况有什么建议吗?提前致谢。

【问题讨论】:

    标签: jenkins continuous-integration


    【解决方案1】:

    您可以在构建之间共享任何数据(即作业构建参数),正如我所描述的 here 使用 Parameterized Trigger Plugin

    【讨论】:

    • 感谢您的回答,但这是我已经在使用的插件。我尝试将通过 Maven 解析的 project.version 属性从项目 1 传递到项目 2,但到达项目 2 的 project.version 是项目 2 的版本。似乎该属性在 Maven 的构建中被溶解了项目 2 并没有从项目 1 传递过来。但这只是一个猜测。
    • 我可以来宾,该参数以纯文本形式传递。这个插件,AFAIK,允许您使用工作区中的文件来传输下游构建的参数。您可以尝试将此类文件准备为构建步骤(带有纯文本内容)并使用它
    【解决方案2】:

    Here is an answer 类似问题。您可以针对您的案例尝试“传递变量”部分。

    不同之处似乎在于您使用的是大括号。如果再次失败,请尝试使用工件。

    【讨论】:

      【解决方案3】:

      您需要在project2中选择“此项目已参数化”选项,以字符串为参数。然后在 project2 中使用提供的变量。

      【讨论】:

        猜你喜欢
        • 2015-06-13
        • 2015-06-05
        • 2014-10-09
        • 2010-12-23
        • 1970-01-01
        • 2018-10-26
        • 1970-01-01
        • 2021-01-27
        • 1970-01-01
        相关资源
        最近更新 更多