【发布时间】:2012-11-04 14:49:21
【问题描述】:
我在全球拥有 40 台服务器。所有正在运行的 centos 灯。
我正在使用 git,我希望对 production 分支的每个更改都部署到这些机器中的每台机器上。每台机器都有自己的config.php 和一些其他机器特定的文件。
目前提交到production 分支触发 hudson 构建任务,phing 运行 phpunit 测试、php-md、cpd 等。问题是,如何将它部署到我的每台机器上,
最好在每台更新的服务器上运行硒测试,然后再使其生效。
我研究了 capistrano,但我完全不想在我的团队中混合使用 ruby 并添加这个依赖项。
您对 php 多服务器 CI 部署的建议?
变体 1
作为一个选项,在提交时运行 web-hook,在每台机器上启动 phing 构建,
在构建配置中,我将指定要克隆的存储库、要保留的文件以及要替换的文件。
虽然如果我突然推送一个错误的build.xml 文件,这将失败,这将阻止我在没有 40 次手动中断的情况下重建/恢复。 + 没有还原选项。
【问题讨论】:
标签: php deployment