【问题标题】:Solving Expressions as part of azure pipeline release name解决表达式作为天蓝色管道版本名称的一部分
【发布时间】:2021-05-15 03:42:55
【问题描述】:

我在尝试使用 azure 将表达式解析为管道名称的一部分时遇到问题。

我已经创建了一些如下所示的已定义变量,并且在回显这些变量时,它们显示了正确的评估表达式

话虽如此,当尝试将它们用作发布名称格式时,它不会解析表达式,而是使用原始值

发布格式名称 = $(Minor.Major).$(Patch).b$(rev:r)

结果是: $[format('{0}.{1}',variables['Major'], variables['Minor'])].$(Patch).b1 我期望什么: 1.0.XbX,其中 x 是构建补丁和版本号

我是否在名称框中遗漏了某些内容以使其变成表达式

使用的参考是https://kasunkodagoda.com/2019/04/03/hidden-gems-in-azure-pipelines-creating-your-own-rev-variable-using-counter-expression-in-azure-pipelines/#8230

【问题讨论】:

    标签: azure-pipelines


    【解决方案1】:

    作为测试结果和文档描述:我们可以在 Azure DevOps build pipeline 中使用管道编号格式,而不是 release pipeline

    Release name format:我们可以通过编辑发布名称格式掩码来改变命名方案,指定格式掩码时可以使用预定义变量

    Build number format:我们还可以使用用户定义的预定义的变量,在您的号码中具有“全部”的范围

    更新1

    我们不能在发布管道中使用counterformat,您分享的博客仅显示构建结果。

    查看此文档adding counter expressions spec:此功能添加了一个新的表达式函数counter,它将在每次构建开始时自动递增一个变量值。

    还有这个doc:它不能用作步骤、作业或阶段的条件的一部分。

    这是我的测试结果

    构建管道:

    发布管道:

    【讨论】:

    • 我已经重新阅读了文档,但除非我遗漏了一些东西,否则没有提及能够运行表达式然后将其用作发布名称。所有这些变量都必须在 Release 启动时预先定义一个固定值。由于没有参考使用表达式来生成一个值,我假设这是不可能的,所以我的表达式自动增加用户输入的路径号,因为主要和次要数字不起作用?所以用户只需要输入补丁号
    • 嗨@ThomasGreener,我已经更新了,检查更新1
    猜你喜欢
    • 2021-11-09
    • 1970-01-01
    • 2020-05-19
    • 2020-09-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-01
    • 2019-10-07
    • 2021-08-01
    相关资源
    最近更新 更多