【发布时间】:2020-03-07 20:43:29
【问题描述】:
我使用.yaml 文件在Azure DevOps 中设置了几个多阶段构建管道。我已经阅读了可用的“发布管道”,我想知道这些有什么好处?
他们似乎也这样做,甚至不提供 .` YAML 的支持。那么这里的主要区别是什么?使用发布管道而不是通常的构建管道可以做什么?
【问题讨论】:
标签: azure azure-devops azure-pipelines devops
我使用.yaml 文件在Azure DevOps 中设置了几个多阶段构建管道。我已经阅读了可用的“发布管道”,我想知道这些有什么好处?
他们似乎也这样做,甚至不提供 .` YAML 的支持。那么这里的主要区别是什么?使用发布管道而不是通常的构建管道可以做什么?
【问题讨论】:
标签: azure azure-devops azure-pipelines devops
在 Azure DevOps 中,在多阶段 yaml 管道(现在称为“Pipelines”)出现之前,您通常使用 Build 管道来build em> / 创建您的软件二进制文件(例如 dotnet publish 或 ng build --prod)并将这些工件存储在 Azure DevOps 放置位置。
然后您通常会有一个发布管道,该管道由这些构建工件(软件二进制文件)触发并将它们部署到一个或多个阶段 .
将这两个管道(构建和发布)分开的原因是您只想构建软件的特定版本一次,然后使用相同的 每个目标环境(例如开发/测试/生产)中的二进制文件。
使用新管道,您通常使用第一个 Stage 来构建您的工件,然后使用下一个 Stages 来部署它 - 类似于之前但在 one 模块中。
如果您之前使用过构建和发布管道,您将在新管道模块中看到旧构建定义,在旧发布模块中看到旧发布定义。但是,他们从未将 YAML 引入发布管道,因为他们知道无论如何他们都会用多阶段管道取代它们。
结论:如果您使用新的多阶段“Pipeline”模块,您不应该再使用经典的 Release Pipelines。
【讨论】:
Yaml 还在开发中,发布管道中的一些功能无法完全替代,例如:
同样,构建管道中的一些功能也没有被完全替换,例如
所以,随着 yaml 的发展,它的功能会越来越全面,但是现在发布管道的一些特性还不能完全替代,发布管道还是有价值的。
【讨论】: