8

我使用 PHPUnderControl(PHP 的 Cruise Control 插件)作为 PHP 开发的 CI 服务器。我使用 Ant 来构建我的项目。PHPUC 的主要使用特性是

  • PHPUnit测试回顾
  • PHPCS 审查
  • 图表、PHP PMD、PHPCPD 和一些杂项。事物。

Hudson 与 PHPUC 的优缺点是什么?听说它的发展速度越来越快,应用越来越广泛。

4

2 回答 2

16

大约一年前,我们从 PHPUC 切换到 Hudson,并且非常享受它。主要优点之一是创建和编辑项目非常容易,因为这一切都是通过一个漂亮的 Web UI 完成的,无需在 XML 配置文件中搞乱。您也不必在更改设置后重新启动 Hudson,因此我发现迭代项目更加容易和快捷。

Hudson 让我印象深刻的另一件事是它可以为您检测和指出多少问题。例如,不止一次使用 PHPUC 构建停止工作,导致不再生成 phpunit XML,但 PHPUC 愉快地使用旧结果数天或数周,直到我们意识到。Hudson 立即指出了这一点,说自构建开始以来没有触及日志文件!在 Web UI 中设置项目时,它会在您键入时告诉您目录/SCM 位置是否不存在,并就您的意思提供谷歌式的建议,甚至在您保存配置之前就发现问题!此外,如果使用“* 4 * * *”之类的 cron 条目定期构建,它会说,“你真的是指每分钟 4,还是你的意思是 '0 4 * * *'?”

也就是说,虽然社区和插件生态系统很丰富,但 Hudson 也比 PHPUC 更通用,因此它没有像 PHP 项目那样紧密集成,但可以通过插件愉快地发布代码覆盖率和 phpdoc(以及任何 HTML 报告)报告。

另外,不要忘记,如果解决方案 (PHPUC) 没有损坏,则可能不需要修复它。但是,您可以通过下载 .war 文件并运行“java -jar hudson.war”轻松评估 Hudson 的初始印象,您将在一分钟内运行一个实例。

总的来说,我觉得它使我们的构建和部署更加健壮和可重复,更快地捕获错误,并且还加速了许多任务(它可以通过 SSH 为自己安装从站并分发作业或同时运行它们!)

于 2010-02-19T05:47:54.810 回答
2

Hudson 是一个不错的 Ui,99% 的时间都可以通过 webui 进行配置。上次我查看巡航控制时,您不得不在各种 xml 文件中四处寻找。

于 2010-02-11T16:26:49.347 回答