在完成时从Azure Devops构建管道设置Git标记

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在完成时从Azure Devops构建管道设置Git标记相关的知识,希望对你有一定的参考价值。

我正在尝试在成功构建结束时使用GitVersion在GIT提交上设置具有当前版本号的标记。感觉不能成为第一个这样做的人,但是我正在努力寻找可行的方法。

Azure Devops Pipeline具有“成功获取源代码以标记源”的功能。我已将此设置并设置为由我拥有的代理任务之一(GitVersion)设置的变量。

Tag Sources我在调试日志中看到,该变量是由我添加到管道中的GitVersion组件设置的。

2019-12-06T20:54:20.2390794Z ##[debug]Processed: ##vso[task.setvariable variable=GitVersion.MajorMinorPatch;]2.98.0

但是,如果我保持原样,则会得到一个创建为“ v $(GitVersion.MajorMinorPatch)”的标记,这意味着在创建标记时该变量不再存在。

[标记格式帮助工具提示说

“标记格式可以是范围为“ All”的用户定义或预定义变量的组合。例如:'$(Build.DefinitionName)$(Build.DefinitionVersion)

$(Build .BuildId)$(Build.BuildNumber) $(My.Variable)'“

所以我想问题是,在管道过程中创建的此变量没有All范围。

然后,我尝试将管道变量添加到“ GitVersion.MajorMinorPatch”的管道中,希望这是在正确的范围内,并希望在运行“ task.setvariable”命令时,该变量将设置为这个更高范围的变量。]​​>

enter image description here

但是在这种情况下,我刚刚创建了标签“ v”。

所以我有点卡住了。我需要以某种方式能够在动态范围ALL上动态创建或设置一个变量,该变量具有我要在此处标记的值。

我将非常感谢您对此提出的任何想法。

我正在尝试在成功构建结束时使用GitVersion在GIT提交上设置具有当前版本号的标签。感觉我不能成为第一个这样做的人,但是我是...

答案

我可以在调试日志中看到,该变量已由我已添加到管道中的GitVersion组件。

以上是关于在完成时从Azure Devops构建管道设置Git标记的主要内容,如果未能解决你的问题,请参考以下文章

azure devops 构建管道将超时减少到 30 分钟

Azure DevOps 中的多个 YAML 构建管道

在 Azure DevOps 中使用构建管道运行 Google 测试

链接 Azure DevOps 管道

在 azure-devops 中的发布管道期间创建标签

在 Azure Devops 中为基于 Python 的 Azure Function 设置发布管道的正确方法