Я использую PHPUnderControl, который работает поверх Cruise Control для моей непрерывной интеграции и модульного тестирования. У меня также есть настройка для запуска PHPDocumentor для генерации phpdoc для меня, и он запускает PHP Code Sniffer для обеспечения соблюдения стандартов кодирования для меня. Но теперь я хочу настроить что-то на том же сервере (Ubuntu), чтобы упростить развертывание на удаленном сервере. У меня уже есть настройка, поэтому после каждой успешной сборки SVN Export выполняется из trunk в каталог в папке проектов на сервере.
Я подумывал написать небольшой пользовательский PHP script, который будет SSH на настроенном удаленном сервере, архивировать последний экспорт, скопировать его, распаковать и запустить любые миграции. PHP скрипт вроде этого не должен быть слишком сложным изначально, если мне не понадобится в конечном итоге начать масштабирование на несколько серверов. Я знаю, что существуют системы, такие как Phing, Fabric и другие.
Мой вопрос в том, есть ли у кого-нибудь опыт с ними и может предоставить некоторые профи и con? Я начал настраивать Phing на своем сервере и будет пытаться использовать Fabric рядом с ними, но задавался вопросом, может ли кто-нибудь, кто использовал их более широко или должен был масштабировать их, мог бы дать некоторую обратную связь.