我使用 PHPUnderControl(PHP 的 Cruise Control 插件)作为 PHP 开发的 CI 服务器。我使用 Ant 来构建我的项目。 PHPUC主要使用的功能是
- PHP单元测试审核
- PHPCS 审核
- 图表、PHP PMD、PHPCPD 和一些杂项。
Hudson 与 PHPUC 的优点是什么?听说它的发展越来越快,应用越来越广泛。
最佳答案
大约一年前,我们从 PHPUC 转到了 Hudson,并且非常享受。主要优点之一是创建和编辑项目非常容易,因为这一切都是通过一个漂亮的 Web UI 完成的,没有在 XML 配置文件中乱搞。您也不必在更改设置后重新启动 Hudson,因此我发现在项目上进行迭代更加容易和快捷。
Hudson 给我留下深刻印象的另一件事是它可以检测并为您指出许多问题。例如,PHPUC 不止一次构建以不再生成 phpunit XML 的方式停止工作,但 PHPUC 愉快地使用旧结果数天或数周,直到我们意识到。 Hudson 立即指出这一点,说自构建开始以来日志文件没有被修改过!在 Web UI 中设置项目时,它会在您键入时告诉您目录/SCM 位置是否不存在,并就您的意思提供类似 google 的建议,甚至在您保存配置之前发现问题!此外,如果使用诸如“* 4 * * *”之类的 cron 条目定期构建,它会说,“你真的是指 4 的每一分钟,还是指 '0 4 * * *'?”
也就是说,虽然社区和插件生态系统丰富,但 Hudson 也比 PHPUC 更通用,因此它没有紧密集成到 PHP 项目中,但可以愉快地发布代码覆盖率和 phpdoc(以及任何 HTML 报告)报告插件。
此外,请不要忘记,如果解决方案 (PHPUC) 没有损坏,则可能不需要修复它。但是,您可以通过下载 .war 文件并运行“java -jar hudson.war”轻松评估 Hudson 的初始印象,您将在一分钟内运行一个实例。
总的来说,我觉得它使我们的构建和部署更加健壮和可重复,更快地捕获错误,并加快许多任务的速度(它可以通过 SSH 为自己安装从站并分发作业或同时运行它们!)
关于php - Cruise Control 作为 PHPUnderControl 与 Hudson for PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2245861/