如何在Azure DevOps中创建每次创建GitHub版本的发布管道?

时间:2019-09-22 22:03:04

标签: github azure-devops azure-pipelines

管道运行时,我收到此警告:

  

由于目标提交的标签与给定的标签模式不匹配,因此不会创建发布。

事实是,GitHub版本的Tag Pattern属性为空白;我没有设置任何特定的标记模式。如何跳过此警告,以便每次管道运行时都可以创建发布?

1 个答案:

答案 0 :(得分:1)

  

我如何在Azure DevOps中创建一个发布管道,该发布管道每次都会创建GitHub版本?

如果我将GitHub版本的Tag Pattern属性留为空白,则可以重现此问题。

那是因为此属性是必填。检查GitHub Release task

  

标签源(必需)配置要用于发布的标签   创建。 “ Git标签”选项会自动采用   与此提交相关联。使用“用户指定的标签”选项   您要手动提供标签的情况。

如上所述,“ Git标签”选项会自动获取标签,

  

与此提交相关联。

因此,如果我们将该属性的“标记模式”留为空白,则该值为空,但提交ID 不为空,则将出现此错误。查看我的详细构建日志:

enter image description here

要解决此问题,我们可以为代码模式提供提交ID。或者,您可以使用另一个选项用户指定的标签,然后可以手动提供标签,例如 onTabViewLoaded(event) { if (event.object.ios) { event.object.viewController.tabBar.clipsToBounds = true; } }

作为测试,它在我这边工作正常。

更新

  

但是我希望每次有人将代码合并或合并到master分支时都运行管道;我不想为每次提交都指定标签

如果您不想为每次提交指定标签,则可以在变量中使用计数器表达式,例如:

release-v1.0

然后,在标记选项中设置variables: MajorVersion: 1 MinorVersion: 0 InitialReleaseTagNumber: 1 IncrementReleaseTagNumber: $[counter(variables['InitialReleaseTagNumber'], 0)] ,如下所示:

enter image description here

因此,构建运行后,标记的值将增加1。

希望这会有所帮助。