8

我有这个设置,但它似乎不太正确。

您将如何改进跨多个 .NET(客户)开发团队的内容交付 (CD) 开发?

CMS 服务器 -> 演示服务器环境

  • CMS 制作 -> 实时和预览网站
  • CMS 组合测试+验收(内部称为“Staging”)-> Live(“Staging”)
  • CMS 开发(DEV)-> Live(开发网站),有时开发本地机器(笔记本电脑)

期望和限制:

  • 多个团队和多个网站
  • 单一DEV CMS 许可证(我相信对客户来说很典型?)
  • 为每个开发人员提供足够的 CD 许可证
  • 最好开发人员可以在本地编程和运行更改——这是一个合理的期望吗?

工作过

我们使用 Content Delivery API 针对本地机器和 CD DEV 的相同代理数据库开发了 ASP.NET 页面。本地机器具有 CD dll、它们自己的许可证文件,并且可以通过查询和组件演示调用很好地运行/调试。

坏的

我们偶尔会同时发布到 Dev 演示服务器Developer 机器,这似乎不是现在,但我认为这是为了在我们的本地机器上获取模式文件。但是,是的,我们不信任开发代理数据库。

有问题的:

本地机器有时需要 Tridion 发布的页面,但我们无法可靠地发布到本地机器:

  • 为单个“本地计算机”发布目标设置多个发布目标是行不通的——我们经常将这些“服务器”带回家。
  • VPN 阻止了对异地笔记本电脑的访问(当时使用“传入”文件夹)。

为每个开发人员管理发布目标并为每台新笔记本电脑设置 CD 是一种很好的做法(就像在练习中一样,不一定是一个好主意),但有点乏味。

这些后见之明的方法会适用吗?

  • 我们自己将物理文件从 Dev 同步到本地机器?
  • 不要在本地(本地主机)运行演示站点,而是从 Dev 构建、上传 dll 和测试?
  • 我们只是缺少第四个 CMS 环境?尽管我们很喜欢我们的销售员,但我们对购买另一个 CM 许可证不感兴趣。

您如何才能更好地为组织中的多个开发人员设置 .NET CD?

编辑:@DominicCronin 指出这只是正确 DTAP 设置的一个子集。我更新了我的条款并创建了一个单独的问题来澄清 DTAP 与 Tridion

4

2 回答 2

3

这个问题的答案在很大程度上取决于您选择的发布模型。

当使用像DD4T这样的框架的动态模型时,您只需一个开发环境就足够了。该环境中有一台 CMS 和一台 CD 服务器,所有内容都发布到代理数据库。CD 环境可以用作自动构建系统,开发人员纯粹在 localhost 网站上本地工作(从开发代理数据库获取数据),并且他们的更改在 VCS 中检查(基于该 VCS 可以进行自动构建完毕)。
这个解决方案可以只使用一个 CMS,因为在 CMS 端几乎没有开发任何代码(模板是标准化的,所有工作都在 CD 端完成)。

如果您使用静态或代理发布模型,它会变得更加复杂。然后我认为解决方案是确实按照 Nuno 和 Chris 的指示将 Dev 拆分为 Unit-Dev 和 Dev。该解决方案需要在 CMS 和 CD 端进行编码,因此每个开发人员都可以在拥有自己的本地 CMS 和 CD 环境中受益匪浅。

于 2012-07-11T11:17:57.493 回答
1

与您的 Tridion 客户经理交谈并同意适合您想要的开发模型的许可证包。当然,他们想要最大化他们的收入,但计算的各种东西都是为了确保大客户相应地支付,而小客户则以反映他们获得的利益的价格获得他们能够负担得起的东西。事实上,建立一条以质量为重点的深思熟虑的开发街道正是确保良好的客户满意度和长期参与的事情。

好的 - 所以客户经理仍然需要遵循内部规则,但他们在与客户达成明智交易方面也有相当大的自主权。我并不是说这将永远有效,但它比盲目地假设他们将坚持以相同的方式计算每台服务器要好。

在技​​术方面 - 当然,尝试让本地开发人员设置和一个通用的主开发服务器 a-la Chris 的 5th。如今,您的通用开发环境可能应该被视为构建/集成服务器:团队保证所有测试都会运行的第一个地方。

CM 和 CD 开发的要求并没有太大的不同,尽管如果没有太多的 CM 开发,您可以从一个 CM 发布到多个开发人员目标。(这在某种程度上适用于 MVC-ish 方法,但它不是灵丹妙药。)

于 2012-07-12T19:02:01.753 回答