gpt4 book ai didi

teamcity - 动态变化 'teamcity.build.branch'

转载 作者:行者123 更新时间:2023-12-04 15:31:46 25 4
gpt4 key购买 nike

我想根据构建管道的另一个 TC 构建配置部分的结果动态设置 'teamcity.build.branch' 的值。

这甚至可能吗?看起来该值是在构建管道开始时评估和使用的。

用例:

  • 我正在执行一个 TC 构建配置,它将生成一个唯一编号
  • 在同一管道的连接 TC 构建配置部分中,我希望在“teamcity.build.branch”中使用该数字 - 仅用于可视化目的

  • 我已经在使用消息服务来覆盖参数,但没有考虑更改。 看起来该值是在构建过程的早期阶段读取的。

    最佳答案

    您可以使用发出 "set parameter" service message 的简单脚本来覆盖参数的值。 .

    By using a dedicated service message in your build script, you can dynamically update build parameters of the build right from a build step (...)



    使用这种方法,您需要执行以下步骤:

    在第一个构建配置中,定义自定义构建参数并将其值设置为您生成的唯一编号。通过将这样的内容写入 STDOUT,直接从生成唯一编号的脚本执行此操作:
    ##teamcity[setParameter name='magicNumber' value='1234']

    在依赖构建配置中,您现在可以访问该参数。使用第二个构建脚本,您可以覆盖 teamcity.build.branch使用相同的机制:
    ##teamcity[setParameter name='teamcity.build.branch' value='the new value']

    注意 1:我建议不要覆盖内置参数,因为这可能会产生奇怪的副作用。相反,在第二个构建配置中定义一个自定义参数并将其用于您的可视化目的。

    注 2:如果您决定忽略注 1,可能需要通过设置依赖属性来覆盖构建参数,如 in the docs 所述。在“覆盖依赖属性”部分中:
    ##teamcity[setParameter name='reverse.dep.*.teamcity.build.branch' value='the new value']

    关于teamcity - 动态变化 'teamcity.build.branch',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39657815/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com