改善我们的工作环境

时间:2009-01-13 10:21:24

标签: svn deployment automation trac environment

在不久的将来,我将有两周的时间来改善我们的工作环境。

我们主要开发一个包含2-10个开发人员的大型PHP / MySQL项目。

目前我们有一台dev服务器,用mod_userdir运行apache,每个dev在他的(samba-accessible)主页中都有一个/ public_html文件夹。 对于VCS和Project Management / Issuetracking,我们使用Subversion和Trac。 测试/部署需要一些手动步骤,而不是那里的自动化程度。

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

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

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

2 个答案:

答案 0 :(得分:5)

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

Hundson易于安装,附带Trac plugin,SVN,CVS,Git插件和Doxygen插件以及其他几乎您能想到的内容。警告:我没有使用过所有这些插件,但它们可能无法完全按照您的要求进行操作......

如果您有CI软件的预算,那么TeamCity非常值得一看(或者您使用的是Bitten吗?)。

你有一个很好的机会,祝你好运!

答案 1 :(得分:2)

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

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

这是我列表中用于改善开发环境的最后一项,我还没有完成。

每个部分都经常被修改或改进,以便为我们提供更好的功能或更容易使用。我建议尽量保持“为什么”作为评论,尽可能接近实际实施的地方。这是改变你的系统的唯一需要的地方。

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

干杯