2017-01-25 6 views
0

Я пытаюсь понять рабочий процесс для развертывания движка рельсов. Я читал this answer. Но я не совсем понимаю, что происходит между Gemfile, bundler, Capistrano и рельсами.Развертывание приложения с движком с использованием git и локальных версий

У меня возникла ситуация, когда я работаю над приложением, локально нажав на git-репозиторий и используя Capistrano для развертывания. В моих приложениях Gemfile

#gem 'my_engine', git: "[email protected]/myengine.git" 
gem 'my_engine', path: '/local/path/to/MyEngine' 

Когда я разрабатываю я часто закомментируйте репозиторий и использовать мой местный (я знаю, что некоторые из них могут взять проблему с этим, но в другие разы другого question), что я хочу знать:

  • Когда двигатель включен или установлен?
  • Если я работаю с локальным движком и решаю развернуть приложение, это локальный движок, включенный в этот момент?
    • Будет ли местная текущая ветка/состояние использоваться?
  • Если я решил переключиться на репо для производства (или или dev), в какой момент это включено?
  • Выполняет ли комплект поставки Capistrano во время развертывания?
    • Может ли Capistrano использовать мою локальную копию или мне понадобится использовать репозиторий git?

ответ

0

двигателя и хост-приложения находятся в одном хранилище, то указав

gem 'my_engine', path: '/local/path/to/MyEngine' 

будет работать.

Если у вас другое хранилище для двигателя и применения затем необходимо указать камень, как

gem 'my_engine', git: '[email protected]:my_engine.git', 
         branch: 'master', revision: 'cb1a8d2495168d411676f58bdfc9015fe728948c' 

branch и revision не являются обязательными, но его рекомендуется использовать, если вы хотите указать на конкретные фиксации или ветви.

Удостоверьтесь, что пользователь deploy (пользователь на сервере, используемом для развертывания приложения) имеет доступ к репозиторию устройств.

Смежные вопросы