2

将基于 LAMP 的应用程序(MySQL、PHP、Zend 框架)自动部署到集成和登台环境中,什么是一个好的工作工具?我正在专门寻找处理部署到远程主机的工具。我假设我认为可以使用诸如 phing 和 ant 之类的构建工具,但我想知道在这种情况下是否有更好的东西。

4

2 回答 2

1

对于集成,尤其是持续集成,我喜欢phpUnderControl (它是 PHP 项目的一个工具,但它本身是基于 CruiseControl,在 JAVA 世界中非常有名):它处理:

  • 从 SVN 获取最新版本
  • 启动自动化测试 (PHPUnit)
  • php_CodeSniffer
  • PHP 文档的生成 (phpDocumentor)
  • 并为用户提供了一个很好的界面来查看每个构建的结果。

而且,首先,这是一篇解释如何设置 phpUnderControl 的文章:phpUnderControl入门
(每次我或一些同事安装 phpuc,我们几乎都按照那篇文章中的说明进行操作,据我所知)


对于暂存,我通常使用几个 phing 任务来构建 tar.gz 存档,我不时将其部署到暂存服务器,使用另一个 phing 任务解压缩存档,并创建所需的符号链接(或之类的东西)

这个想法是持续集成一直在发生,并且必须是全自动的,而部署到登台只在一段时间内完成(例如每周一次),并且可以半自动完成。

于 2009-12-08T22:08:16.693 回答
0

配置构建服务器,CruiseControl 之类的东西非常适合,如果需要,可以滚动您自己的自定义 Nant 脚本,或者使用 Exec 任务来处理部署。

对于诸如特定部署之类的事情,每个都有其配置问题和复杂性,几乎没有开箱即用的东西。

这样看,滚动你自己的脚本和批处理文件绝对意味着你知道所有的步骤,并且可以随意配置和修改它,而不是一些神奇的童话尘埃,当事情破裂时——不知道在哪里修理它。

于 2009-12-08T22:08:45.277 回答