选择以下所示的选项时,将生成一个Yaml文件:
在此yaml文件中,您可以定义从restore -> build -> run tests -> publish and -> deploy to azure app service web app
开始的整个部署周期。
然后,为什么有发布选项?如果我可以通过Pipelines -> Pipelines
选项定义整个生命周期,那么Pipelines -> Releases
选项的目的是什么?
答案 0 :(得分:16)
如Microsoft文档所述,“发布”部分是其“经典编辑器”解决方案:Link
“管道”部分提供了两种创建管道的方法:
经典的基本含义是创建Azure DevOps管道的原始方式。通过以交互方式使用GUI编辑器来构建管道。在助理的帮助下从 YAML 创建的管道是较新的方法。
“管道” 部分主要具有“发布” 的功能不是,通过编写YAML代码,您可以将CI / CD策略配置为代码,在哪里,管道定义与您的代码一起存在。
他们最新的学习资源还指示使用YAML并在同一管道Deploy applications with Azure DevOps中创建构建和部署阶段
我建议:
编辑:2020年5月11日更新,Pipelines YAML CD features now generally available
答案 1 :(得分:5)
管道是Builds的最新DevOps用户界面中的名称。在旧版用户界面中,它是这样的:
可以说Pipeline
(或Build或Build Pipeline)代表Azure DevOps中的CI(连续集成)。 Release
代表Azure DevOps中的CD(连续交付)。管道通常需要代码,对其进行构建,测试并创建工件。 Release拿走了工件,然后对其进行释放/部署。
用法取决于您的项目。
如果您的项目很小,并且不需要发布功能(例如,部署前的条件和批准),则可以使用restore -> build -> tests -> deploy
这样的管道,而无需发布。
如果您的项目很大,并且有很多开发人员参与,那么每次开发人员推送到通用仓库时,最好使用Pipeline来构建,运行单元测试,执行其他自动化操作以及带有工件的结果。因此,您可以确定一切都已解决,并通过了集成测试。管道还可以最终将发布/部署任务发布到开发环境/服务器,以进行内部工作,使用,测试。
在大型项目中,您无需将所有推送都部署到通用存储库。因此,您可以确定将负责部署到生产环境的发行版。它具有为此目的而设计的功能,例如预先批准,因此每个人都同意这是用于生产的正确构建(或工件)。