VSTS:无法添加触发释放的Build Tag

Ste*_*ane 6 azure-devops azure-pipelines azure-pipelines-release-pipeline

在VSTS online中,我在Release流程(Under Triggers)中检查了Continuous Deployment.在Set trigger on artifact source,我把Tag condition(with tags)设置为Automated.

释放触发器

我在构建过程中也有一个标记.(正确地将标记添加到构建中)

但我的发布不会自动触发?在Deployments状态(在我的构建中),它说"为发布触发器设置的标签与构建分支中的标签不匹配".但他们匹配(见图片).可能是什么问题?

建立

Mar*_*Liu 14

这是因为您Automated在构建完成后添加了标记(通过标签源或手动).这不能触发CD发布.标签应该在构建期间添加(不是构建完成).因此,您可以在构建定义中添加带有内联脚本的power shell任务:

Write-Host "##vso[build.addbuildtag]Automatd" 
Run Code Online (Sandbox Code Playgroud)

然后在构建完成后触发释放.

在此输入图像描述

  • 什么时候在构建过程中添加发布标签有用?这与在每个版本上创建一个发行版不一样吗?另外,我们通常希望在每次提交时都进行构建,而不是每次发布时都进行发布。 (3认同)

Ant*_*ios 5

我以不同的方式执行此操作,非常类似于: 如何在推送标签时触发 VSTS 构建和发布?

在我的发布管道中,我将分支过滤器添加到“refs/tags/ ”或“refs/tags/v ”以用于持续部署触发器,或者我想要在发布管道中过滤操作的其他任何位置。好处是,您可以在构建完成应用 Git 标签,就像您喜欢的那样。这是可选的,但我将 Git 与 GitVersion 结合使用。

另外,请注意 Git 标签和构建标签并不相同。Git 标签存储在 Git 存储库中,而构建标签则与 VSTS/Azure 构建摘要关联。不要将两者混淆。