我将在Azure DevOps中创建CI / CD管道,但是发行版本号有问题。使用此CI / CD,构建了一个dotnet应用程序并创建了一个Docker映像,因此我想拥有与V1.2.0和.....相同的Docker映像发行版号,但目前我的编号例如:10、11。 。或仅最新标签! 有人可以支持我拥有自己的发行版本号吗? 谢谢
答案 0 :(得分:2)
您可以在 Release Pipelines-> Options-> General-> Release name format 中设置发布版本号。
$(rev:r)
是一个递增变量。因此,您可以将其添加到发行版中。
例如:V1.2.$(rev:r)
结果:
注意:$(rev:r)
从1(1、2、3 ...)开始计数。
根据您的要求,您正在使用CI和CD进程,似乎您需要从0开始计数。您还可以尝试使用$(Build.buildnumber)变量。
以下是步骤:
第一步:在Build Pipeline(CI)中,设置计数变量(例如BuildRevision :$[counter( ' ',0)]
)。
第2步:在内部版本号中使用该变量(内部版本管道->选项->内部版本号格式)。
Step3:将构建工件设置为发布源。在发布管道版本中使用$(Build.buildnumber)。
结果:
在这种情况下,发行版可以从v1.2.0开始。
更新:
例如,当我将发行版本从V0.0更改为V1.0时,计数器如何重新启动?
您可以尝试以下步骤:
创建2个变量:
1。major-minor = 0.0
2。revision = $[ counter(variables['major-minor'],0) ]
内部版本号:$(major-minor).$(revision)
在这种情况下,当major-minor
更改为V1.0时,计数器将重置。
答案 1 :(得分:1)
在这种情况下,您可以使用GitVersion和语义版本控制模式。 为此,您将需要以下扩展名:https://marketplace.visualstudio.com/items?itemName=gittools.gitversion
之后,在编译/构建项目之前添加步骤:
steps:
- task: GitVersion@5
inputs:
runtime: 'core'
之后,您可以使用变量:
$(GitVersion.FullSemVer)
该变量将存储当前的构建版本-基于git。