2011-12-30 2 views
0

Наш процесс развертывания состоит в том, что мы копируем код с usb на машину развертывания. Таким образом, производственная машина не имеет доступа к базе данных git, и нам нужно только выполнить развертывание на локальном компьютере. Нам необходимо автоматизировать этот процесс развертывания.сценарий развертывания рельсов для развертывания на локальной машине (без ssh)

Можем ли мы адаптировать capistrano для этой потребности? Можно использовать стратегию развертывания: copy, но нам не нужно ssh на машине, так как мы будем запускать скрипт cap для развертывания на том же компьютере. Итак, как изменить конфигурацию развертывания крышки для достижения развертывания на одном компьютере без использования ssh?

Если capistrano не может использоваться для сценариев, где нет ssh для удаленной машины, какой другой вариант для автоматизации процесса развертывания?

ответ

0

я гугл для «шапки развернуть на локальном хосте» и нашел эту ссылку среди других: develop and deploy on the same box with capistrano, но это вовсе не работает, по крайней мере, с моим развертыванием, поэтому я сделал следующее: создать vendor/plugins/cap_ext/recipes/my_copy.rb с линией:

$:.unshift File.join(File.dirname(__FILE__), 'my_copy') 

, а затем vendor/plugins/cap_extensions/recipes/my_copy/capistrano/recipes/deploy/strategy/my_copy.rb и скопировал copy.rb файл там, изменил определение класса на:

class MyCopy < Copy 
end 

, а затем сделали изменения, что там мне было нужно.