在Visual Studio Team Services(VSTS)中,构建版本和发布版本定义如何相互关联?

时间:2017-09-21 17:47:30

标签: azure continuous-integration azure-devops continuous-deployment

在Azure网站上使用“持续投放”刀片:

Azure Continuous Delivery

我在VSTS中设置了构建和发布定义。

Build definition in VSTS

Release definition in VSTS

源代码控制正确触发构建,然后发布版本。一切都很好。

我不明白的是Build和Release定义是如何连接的。我没有看到任何一个引用另一个的属性。它们是如何联系在一起的?

第2部分让我感到困惑的是,当我查看Build定义中的Tasks

Tasks in VSTS Build definition

没有部署任务 - 这个 对我有意义,因为部署任务显示在发布定义中(似乎是合乎逻辑的):

Deploy Task in Release definition

但是,我发现在构建定义方面,我可以直接添加部署任务。

Deploy Task in Build definition

将部署任务作为构建定义的一部分而不是作为发布定义的一部分,这是什么意思?

1 个答案:

答案 0 :(得分:5)

构建和发布系统使用相同的任务(和任务运行程序),但除此之外,还要考虑到各自问题域的关注点。例如,发布定义编辑器允许您定义环境管道,批准和触发器,以促进环境之间的构建。

构建与发布定义的工件选项卡下的发布定义相关联 - 构建可以使用发布工件任务来发布输出(如二进制文件)。然后,版本可以沿您定义的管道部署这些已发布的工件。

如果您有一个非常简单的项目而不需要发布定义公开的发布管道功能,那么您可以创建一个构建定义来构建和部署您的软件。