Итак, я полагаю, что есть бизнес-причина, по которой вы не можете развернуть приложение на другом сервере?
Если этого не произойдет, просто разверните весь код и настройте свой веб-сервер так, чтобы он обслуживал общую папку..
(в Apache / Passenger конфиги были бы точно такими же, вы просто не включили бы пассажиров на статическом сервере)
Это единственный простой способ сделать это .. в противном случаеу вас будет куча головных болей ..
Тем не менее я собираюсь найти способ решить эту проблему.
Если вам нужно развернуть толькостатический код, тогда я предлагаю вам создать два хранилища
- приложения (например, git @ myserver: app.git
- статических файлов (например, git @ myserver: static.git)
Теперь в вашем приложении включите git @ myserver: static.git в качестве подмодуля, смонтированного в public /
Сделав это, вы должны искать стандартные рецепты Capistrano для развертывания с помощью подмодулей git (в частности, я думаю, вы хотите хранить всеocal кеш подмодулей, обновите его, затем git submodule init
как-то с этим)
Затем вы можете получить два рецепта капистрано
Я предлагаю вам проверить многоуровневое капистрано ... определение приложенияи static как два этапа
Поэтому вы можете просто указать git @ myserver: app.git в качестве хранилища для «app» и git @ myserver: static.git в качестве хранилища для «static»
тогда простой cap app deploy:migrations && cap static deploy
должен сделать это.
, но помните, что они не будут одновременными