Автоматизация процесса git pull на сервере dev / QA при коммите - PullRequest
3 голосов
/ 12 апреля 2011

У меня есть приложение rails, размещенное на github.Всякий раз, когда происходит фиксация в ветке 'dev', я хотел бы выполнить git pull для блока dev, а также вызвать команду /etc/init.d/apache2 restart.Это то, что я могу сделать с развертыванием Capistrano, или я могу написать какой-то собственный скрипт оболочки и каким-то образом подключить мое приложение rails для вызова этого скрипта оболочки?

1 Ответ

3 голосов
/ 12 апреля 2011

На git-сервере вам понадобится ловушка post-receive, которая вызовет git pull на поле dev. Быстрый DAFS для «git deploy with post-receive» нашел довольно много ресурсов, таких как http://ryanflorence.com/deploying-websites-with-a-tiny-git-hook

Я бы лично предпочел использовать для этого систему сборки, такую ​​как Jenkins, так как она дает вам больше контроля и видимости. Мы настроили систему непрерывного развертывания, используя Jenkins и github post-receive, с относительно небольшим суетой. Еще одним преимуществом является то, что вы можете запускать свои тесты перед автоматическим развертыванием (если они пройдут) цепочкой заданий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...