通过Azure DevOps发布管道,我计划使用下面的扩展来自动标记我的Branch,这个扩展是由Micheal Barry创建的Tag/Branch Git on Release。请看下面的图片。
我想知道如何将标签名称自定义为 UAT_$(date:yyyyMMdd)$(Rev:.r)
. 由于这个文档有限,我是这样尝试添加的(见下文)
怎样才能实现这个功能呢?另外,我更感兴趣的是如何填写这个扩展的这些高级选项。
在 $(date:yyyyMMdd)$(Rev:.r)
只支持在 建造数量 (Options=>Build Number Format) 和 发布号 Options=>发布名称格式)。所以如果你把 $(date:yyyyMMdd)$(Rev:.r)
径直 在 Static Tag Name
,任务无法评估其价值。
这里有几个方向可以做到你想要的。
$(date:yyyyMMdd)$(Rev:.r)
作为发布名称格式。然后使用 UAT_$(Release.ReleaseName)
在 Static Tag Name
输入。
的结果。
PS: 如果你把build pipeline设置为release pipeline的工件源,你也可以使用 $(Build.BuildNumber)/$(Build.DefinitionName)
在您的发布名称格式中。
2.如果您喜欢使用 Release-$(date:yyyyMMdd)$(Rev:.r)
作为发布名称格式。现在,由于您想要的是 UAT_xxx
,你需要使用 Regex
选项。
假设你的发布名称的实例是 Release-20200518.5
,现在的标签将是 UAT_20200518.5
如果你按照我上面的输入配置任务。
另外。
当发布名称格式为 $(date:yyyyMMdd)$(Rev:.r)
,你的发布将是。
你可以选择使用 Static Tag Name
,检查上面的#1。
当名称格式为 Release-$(date:yyyyMMdd)$(Rev:.r)
,你的发布将是。
你应该在那个第三方任务中使用regex选项,检查上面的#2。关于什么是Regex,请看 此处网上也有很多关于Regex主题的文档博客......
你的流水线中使用了错误的任务,建议使用git标签任务,我觉得挺好用的,你可以在标签栏中使用你的命名。我建议使用git标签任务,它对我来说很好用,你可以在标签字段中使用你的命名。Git标签任务
我发现这个扩展更容易设置,其满足了我们的需求。所以基本上我的git标签=assembly版本。每次我们在生产环境中发布版本时,我都会这样做(更改assemblyInfo信息,并将其存储在构建定义的Variable中)。在市场上有一套任务允许从assemblyInfo读取和写入。对于git标签任务,我只需要使用之前设置的Tag变量,基本上每发布一个新版本,Tag变量就会增加一个。你可以在下面的图片中查看更多
所以我实际上只是添加了简单的标签来镜像我的装配版本,但在标签信息中我也添加了我的构建信息,看起来像这样$(build.buildNumber)-$(Tag)
如果您想更深入地了解 azure devops 预定义变量,您可以在这里进行了解。使用预定义变量