Capistrano не открывает консоль рельсов

Я пытаюсь открыть консоль rails с помощью Capistrano, но он закрывает соединение. Следующий скрипт я использую и открываю консоль rails

Код

namespace :rails do
  desc "Start a rails console, for now just with the primary server"
  task :c do
    on roles(:app), primary: true do |role|
      rails_env = fetch(:rails_env)
      execute_remote_command_with_input "#{bundle_cmd_with_rbenv} rails console #{rails_env}"
    end
  end

  def execute_remote_command_with_input(command)
    port = fetch(:port) || 22
    puts "opening a console on: #{host}...."
    cmd = "ssh -l #{fetch(:deploy_user)} #{host} -p #{port} -t 'cd #{deploy_to}/current && #{command}'"
    exec cmd
  end

  def bundle_cmd_with_rbenv
    puts "RBENV_VERSION=#{fetch(:rbenv_ruby)} RBENV_ROOT=#{fetch(:rbenv_path)}  #{File.join(fetch(:rbenv_path), '/bin/rbenv')} exec bundle exec"
    if fetch(:rbenv_ruby)
      "RBENV_VERSION=#{fetch(:rbenv_ruby)} RBENV_ROOT=#{fetch(:rbenv_path)}  #{File.join(fetch(:rbenv_path), '/bin/rbenv')} exec bundle exec"
    else
      "ruby "
    end
  end
end

Подробнее

Я использую этот скрипт, чтобы открывать консоль rails так много раз, что он не работает, но в течение пары месяцев скрипт открытия консоли rails не работает, и я не знаю, что с этим делать.

Вывод

RBENV_VERSION=2.1.2 RBENV_ROOT=/home/deployer/.rbenv  /home/deployer/.rbenv/bin/rbenv exec bundle exec
opening a console on:

Usage:
  rails new APP_PATH [options]

Connection to 45.55.142.39 closed.

Любое предложение будет работать


person TayyabZahid    schedule 24.04.2015    source источник


Ответы (1)


Что-то не так с вашими бинстабами. Есть две вещи, которые вы должны сделать.

1) в вашем deploy.rb:linked_dirs не должно быть каталога bin

2) Это должно быть в вашем deploy.rb:

set :bundle_binstubs, nil

и после этого вы можете запустить на своей локальной машине:

rake rails:update:bin

Это будет включать binstubs в вашем репо.

Дайте мне знать, как это происходит.

person Saad Masood    schedule 05.05.2015
comment
Это очень поможет. Спасибо - person TayyabZahid; 06.05.2015