Я заинтересован в переходе с Capistrano на Chef, но у меня возникли некоторые проблемы при объединении всех частей.
Я следовал http://wiki.opscode.com/display/chef/Quick+Start и могу запускать экземпляры EC2 сknife
.Что касается развертывания кода, похоже, что я хочу делать то, что в http://wiki.opscode.com/display/chef/Deploy+Resource,, единственная проблема заключается в том, что нигде на этой странице не упоминается, в каком каталоге / файле должен находиться блок кода deploy /to/path
.
Другая проблема, с которой я сталкиваюсь, это понимание того, как развернуть изменения кода после настройки сервера.Возможно, я просто привык к своему текущему рабочему процессу (git push && cap deploy
), но лучшее, что я могу сказать, это то, что после того, как я фиксирую свои изменения, я должен зайти на сервер и запустить sudo chef-client
?что-то об этом чувствует себя неправильно.Разве нет эквивалента верхнего предела, то есть chef deploy
?
Наконец (и, возможно, это немного сложнее), я хочу развернуть несколько приложений rails на одном сервере.Кажется целесообразным хранить какой-либо файл конфигурации chef в репозитории каждого приложения, описывая особенности его развертывания, но я не уверен, как это будет взаимодействовать с сервером chef-repo / hosted.Будет ли каждое приложение роль?И из моего понимания того, как все работает, я также немного обеспокоен тем, что «chef-client» будет пытаться развернуть все приложения при запуске.С git push && cap deploy
Я уверен в том, что я развертываю.Принимая во внимание, что некоторые другие репозитории приложений могут не находиться в развертываемом состоянии.Будет ли способ развернуть только одно приложение в этой конфигурации?