Задать вопрос
viktorvsk
@viktorvsk

Ruby (Rails, w\o Rails) — как выполнить shell команду с другим Gemfile (в новом потоке\процессе)?

Есть приложение на Rails. Пробую из него вызвать команду (с bundle exec) другого приложения (spawn, popen3, exec, system, ` ... ). Команда: middleman deploy, на что получаю, что middleman-core не включен в Gemfile и т.д.

Оба приложения на одном гемсете. Из командной строки все работает. Сделал bash скрипт, запуская из приложения, получаю ошибку, любым другим способом - все нормально.

Вопрос: как понять потоки (или же процессы?) руби? Я ожидал, что одна из команд (например, exec, которая, как говорят, выполняет все в новом процессе и даже не возвращает управление) будет выполнятся точно так же, как если я открою новое окно терминала.
  • Вопрос задан
  • 2672 просмотра
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Thinknetica
    Профессиональная разработка на Ruby on Rails
    9 месяцев
    Далее
  • Хороший программист
    Интенсив по Ruby on Rails
    5 месяцев
    Далее
  • Thinknetica
    Оптимизация Ruby/Rails-приложений
    9 недель
    Далее
Пригласить эксперта
Ответы на вопрос 1
jj_killer
@jj_killer
Ну, раз в Gemfile, то надо: bundle exec middleman deploy
Или по новому, запихнуть стаб в bin (bundle binstubs middleman-core) и вызывать как:bin/middleman deploy
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы