こんにちは、ruby net/ssh gem (2.0.24) を使用してリモート サーバーに接続し、rake タスクを実行しようとしています。以下に概説するスクリプトを使用して他の単純なタスクを実行できますが、rake は失敗します。
これは私のコードです
Net::SSH.start("myremote_server", 'ubuntu', :keys => ['abcdef.pem'], :paranoid => false, :verbose => :debug) do |ssh|
result = ssh.exec!("cd a_rails_directory; rake sunspot:solr:start")
puts result
ssh.loop
end
次のエラーメッセージが表示されます
rake aborted!
uninitialized constant Bundler
/home/ubuntu/a_rails_directory/config/boot.rb:9:in `rescue in <top (required)>'
/home/ubuntu/a_rails_directory/config/boot.rb:5:in `<top (required)>'
/home/ubuntu/a_rails_directory/config/application.rb:1:in `<top (required)>'
/home/ubuntu/a_rails_directory/Rakefile:4:in `<top (required)>'
(See full trace by running task with --trace)
リモートサーバーに手動でSSH 接続すると、rake taks を非常に簡単に実行できますが、上で概説したように net/ssh では機能しません。
どういうわけか、適切なシェルまたはパス変数への適切なアクセスに接続していないように感じますが、よくわかりませんし、修正方法もわかりません。何かご意見は?
ティア