8

在不久的将来,我将有大约 2 周的时间来移动和改进我们工作中的开发环境。

我们主要开发一个大型 PHP/MySQL 项目,有 2-10 名开发人员。

目前我们有一个开发服务器,使用 mod_userdir 运行 apache,每个开发人员在他的(samba 可访问)家中都有一个 /public_html 文件夹。对于 VCS 和项目管理/问题跟踪,我们使用 Subversion 和 Trac。测试/部署需要一些手动步骤,那里没有太多自动化。

我对新设置的计划包括对现有内容的以下更改:

  • 持续集成
  • 将 CI 集成到 Trac,创建/查找一个插件,该插件提供在构建进度成功或失败后启动操作(即部署到 staging/live)
  • 创建自动化部署脚本(一键式)
  • 将(doxygen)文档集成到构建进度中,并以某种方式集成到 Trac
  • 添加自动版本控制
  • 添加另一层监控(本地nagios监控我们的生产系统nagios)
  • 添加一个夜间运行的 MySQL Replication Slave,然后开发人员可以使用它来测试 up2date 数据上的东西
  • 查看备份计划
  • 记录我以这种方式设置所有内容的方式和原因

您有什么可以进一步改进的提示/提示吗?我们应该以不同的方式做些什么?

4

2 回答 2

5

我会确保您编写自动部署脚本的方式可以让您的持续集成工具使用它们。Hudson(和我怀疑的 CruiseControl)基本上包装了这些脚本并提供了一个漂亮的前端。

Hundson is easy to install and comes with a Trac plugin, SVN, CVS, Git plugins and a Doxygen plugin and others for almost anything you can think of. Caveat: I haven't used all these plugins and they may not do exactly what you want...

If you have a budget for CI software then TeamCity is well worth a look (or are you using Bitten?).

You've a great opportunity, so good luck!

于 2009-01-13T11:07:50.410 回答
2

我唯一的建议是不要花太多时间在

  • 记录我以这种方式设置所有内容的方式和原因

这是我改进开发环境的清单中的最后一项,但我还没有这样做。

每个部分都在不断修改或改进,以便为我们提供更好的功能或更容易使用。我建议尽量将“为什么”作为注释保留在您实际实施它的位置。这是更改系统的人唯一需要它的地方。

也许还有一个显示物理服务器的链接和名称的大图,但除此之外,我发现文档很麻烦。

干杯

于 2009-01-13T10:33:05.707 回答