【发布时间】:2016-08-19 12:18:18
【问题描述】:
我正在尝试使用 VSTS(发布中心)配置发布管理。我有三种不同的环境;每个环境包含两台服务器。
提议的发布管道:
Zone1_Dev -> Zone1_QA ->Zone1_PROD(其中每个包含两个服务器)
谈论“Zone1_Dev”环境,其中包含同一网络中的两台服务器 A 和 B。
我的解决方案中有两个 Web 应用程序,每个服务器将托管不同的应用程序:
- 服务器 A 托管客户端 UI (MyClientUI)
- 服务器 B 托管管理 UI (MyAdminUI)
因此,我为每个应用程序创建了两个不同的构建定义,因为我想避免构建这两个项目(因为它们不会相互影响)。
AdminUI 定义映射到 MyAdminUI 项目:
然后,我创建了一个发布定义,因为我将通过发布管道如下: Zone1_Dev -> Zone1_QA ->Zone1_PROD
代理安装在服务器 A 上,它将在 AdminUI 或 ClientUI 中获得任何更改。如果是:
- ClientUI,它会将其移动到服务器 A IIS 目录。
- 如果是 AdminUI,代理会将其移动到服务器 B 的 IIS 目录。
我的问题,如何将一个版本链接到不同的构建定义。因为根据我的策略,我必须创建两个具有相同配置但不同构建定义的不同发布定义。有没有办法在一个发布定义中做到这一点,因为它们共享相同的管道?
【问题讨论】:
-
很确定不支持将一个版本链接到不同的构建定义。如果两个构建试图同时触发发布会发生什么?为什么这是个问题?是因为必须维护两个相同的版本吗?
-
是的,因为我必须为每个区域维护多个服务器(这意味着多个版本,如果该功能不存在),并且我至少有 2 个区域。区域 1 仅包含两台服务器,每台服务器托管不同的应用程序。但是,区域 2(我的问题中没有提到)将是服务 API,我有两台服务器,其中一台托管 7 个 wcf 服务 api 项目。我会创建 7 个不同的版本(每个项目一个)吗?
标签: continuous-integration azure-devops release-management continuous-deployment ms-release-management