天蓝色devops中的Pipeline和Release Pipeline有什么区别?


14

选择以下所示的选项时,将生成一个yaml文件:

在此处输入图片说明

在此yaml文件中,您可以定义从开始的整个部署周期restore -> build -> run tests -> publish and -> deploy to azure app service web app

那么,为什么有发布选项?如果我可以通过Pipelines -> Pipelines选件定义整个生命周期,那么选件的目的是Pipelines -> Releases什么?

在此处输入图片说明


以下答案是否可以帮助您实现所需的目标?如果是,则您可以接受答案,因此其他SO用户将可以查看该解决方案是否有效。如果您仍然遇到问题,请随时在此处发表评论:-)
Frank Wang-MSFT,

Answers:


16

管道是Builds的最新DevOps用户界面中的名称。在旧版用户界面中,它是这样的: 在此处输入图片说明

可以说Pipeline(或“构建”或“构建管道”)代表Azure DevOps中的CI(连续集成)。Release代表Azure DevOps中的CD(连续交付)。管道通常需要代码,对其进行构建,测试并创建工件。发布采用工件并释放/部署它。

用法取决于您的项目。

如果您的项目很小,并且不需要发布功能(例如,部署前的条件和批准),则可以使用如上所述的管道: restore -> build -> tests -> deploy而无需发布。

如果您的项目很大,并且有很多开发人员参与,那么每次开发人员推送到通用仓库时,最好使用Pipeline来构建,运行单元测试,执行其他自动化操作并获得人工结果。因此,您可以确定一切都已解决,并通过了集成测试。管道还可以最终将发布/部署任务发布到开发环境/服务器,以进行内部工作,使用和测试。

在大型项目中,您无需将所有推送都部署到通用仓库中。因此,您可以确定将负责部署到生产环境的发行版。它具有为此目的而设计的功能,例如预先批准,因此每个人都同意这是用于生产的正确构建(或工件)。


这并不完全准确,因为管道(当指定为YAML文件时)还支持发布方案。
丹尼尔·曼

2
@DanielMann她没有说相反的话,而是通过解释两者之间的区别来回答op的徘徊
AymenDaoudi

2

如Microsoft文档所述,“发布”部分是其“经典编辑器”解决方案:链接

“管道”部分提供了两种创建管道的方法:

  1. YAML代码
  2. 经典UI编辑器

什么经典基本上是由他们的意思是原来的方式创建Azure中的DevOps管道。通过以交互方式使用GUI编辑器来构建管道。在助手的帮助下从YAML创建的管道是较新的方法

什么“管道”部分主要有“发布”不就是写YAML代码它使您能够将CI / CD策略配置为代码,其中,管道定义一起生活,并连同你的代码。

他们最新的学习资源还指示使用YAML并在同一管道中创建构建和部署阶段,使用Azure DevOps部署应用程序

我建议:

  • 如果您喜欢使用经典UI编辑器,请使用“管道”部分进行构建,使用“发布”部分进行部署;
  • 如果您更喜欢使用YAML,只需使用“管道”部分进行构建和部署,并创建一个多阶段管道。

多阶段管道


他们对事物的命名方式确实令人误解。
AymenDaoudi
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.