3

我正试图解决我在发布管理方面遇到的问题——我在其他自动化部署工具(如 uDeploy)中似乎已经找到了解决方案,但我想知道它是否可以在 VSTS RM 中处理。

这是我的情况:

我想在我的应用程序中自动部署几个(10 多个)Windows 服务组件以及一个 UI 组件。

所有工件都是使用单个 TFS 构建定义构建的。

客户将非常欣赏能够根据微服务架构逐个版本地将部分或全部组件部署到生产环境,并且不影响未受影响的服务。

创建 10 + 发布定义,每个组件一个似乎很疯狂,特别是因为环境配置将跨定义重复。

但同时,如果我使用单一定义,如何使部署的组件可配置?

在一个定义下为每个组件创建任务并启用/禁用每个版本的任务?在这种情况下,我必须不断更新发布定义?

每个组件都有一个“环境”?并且只部署到我希望部署的“组件环境”?

对此非常有义务的任何建议。

提前致谢。

4

1 回答 1

2

您在这里有多种有效的方法。要么您的组件真正相互独立,并且您希望仅在源已更改时才构建(和部署)它们,因此拆分构建定义和发布定义更有意义。(把它想象成每个组件都有自己的发布管道)

或者您的组件具有某种依赖关系,一次部署所有 Web 组件会更有意义,例如一次部署所有后端。然后每个角色更少的构建定义和发布定义更有意义。(并允许您微调触发)

最后,如果您的组件高度相互依赖,则使用环境和部署前批准的独特构建定义和发布定义更有意义。

我想在这里强调的是,您拥有的构建定义和发布定义越多,您拥有的选项就越多。
关注每个组件的本质(它做什么,工作负载在哪里),相互依赖,以及谁来批准通常答案会在此之后出现。

此外,即使环境在技术上可以帮助您实现您想要做的事情,在我看来,它们也是为了在构建提升流程中实现诸如“qa”、“staging”和“production”之类的东西。(与来源推广相比)

希望有帮助。

于 2016-08-10T16:13:22.247 回答