【发布时间】:2021-10-25 20:27:38
【问题描述】:
50 多个客户端使用相同的软件(WEB、SQL、REST 服务器)。它们都是隔离的,并使用不同的部署计划。 目前,我们使用 XAML 构建定义来准备代码并在一次运行中部署它。这需要大量资源来编译相同的源代码 50 多次,但它允许我们按照客户(或我们)选择的任何时间表将代码部署到特定的客户。 我想改变一次构建部署包的方法,并按他们的时间表为每个客户部署它/它们。 是否可以在 TFS Release 中设置?也许 50 多个版本使用相同的构建定义? 请记住,大多数客户每天晚上都会获得新版本(只是在不同的时间),有些可能会每周更新,有些可能会要求停止部署一段时间并按照他们的命令恢复。因此,“每周客户”必须获得 7 个版本才能获得最新版本。 “暂停的客户端”将累积一定数量的程序包,这些程序包将在恢复更新时应用到其服务器。 所有软件包都是增量的,我们不能只使用最新版本。
有什么建议吗? 谢谢。
【问题讨论】:
-
什么版本的 TFS? “TFS 发布”是什么意思?至少有 3 或 4 种不同的事情可能意味着我无法想到。请准确地描述您当前的环境。
-
我们目前使用 TFS 2015。升级到 TFS 2017(我们仍在某些领域使用 XAML 构建)。我们有 PROD 分支,其中包含生产站点的代码。相同的代码在不同的时间或一天部署给每个人。我需要一种方法来生成一个包并以不同的时间表将其部署到不同的客户端(某些时间表事先不知道,因此所有包都是增量的)。当客户准备好接收最新版本时,我们必须部署所有优秀的包以使它们更新到最新的代码......谢谢。
-
在 TFS 构建和发布中玩了一点之后,我能够做到这一点。创建了创建工件的构建定义。创建了多个使用这些工件的发布定义。我将每次创建新版本的工件时都设置为发布,并按计划设置发布部署。在我收集了几个版本并安排了部署之前,一切看起来都很有希望。即使选择一次部署一个,它们也被无序部署。这是 TFS 2017 中的错误还是我遗漏了什么。不可能是设计使然,为什么要在发布 1 或 2 之前部署发布 5...?
标签: tfs