VSTS 发布管理;许多发布目标

VSTS Release Management; many release targets

我有一个包含 8 个 Web 项目和 12 个可执行文件的解决方案。它们都非常紧密地耦合在一起,因为它们之间共享许多业务库;我们在 VSTS 中对整个解决方案只有一个构建定义,但有 20 个不同的发布定义。

我们有用于 Dev/QA/Pre-Prod/Production 的单一环境、足够多的并发活动开发和管理限制,以至于向上移动所有环境模型的单一更改对我们来说不太适用;开发和 QA 测试,稍后将转移到发布候选版本的夜间复合构建。

在我看来,我们想要两组发布定义(一组开发和 QA 组,以及一组用户接受的生产组),但如果遵循该模型,我们最终会得到40 个版本定义。我错过了什么吗?我们对 EXE 有单独的定义,因为我们不希望一个版本失败影响另一个版本,并且由于它们都是单独目录的单独有效负载,所以它们似乎都应该是不同的。

每个可部署项目 1 个发布定义的模式是否正确,在夜间构建的情况下,两组所有可部署发布定义是否正确?

您应该始终致力于让一个发布定义同时在一个环境中部署整个应用程序,或者如果您有某种微服务模式,至少一次部署整个子系统。 当面临高度耦合的依赖关系时,您不希望必须触发多个版本。这可能会在循环中引入很多错误,或者至少会引入复杂性。 对于每个环境,该定义也可以多次具有相同的序列。