Class: Engineyard::Local::Middleware::Rails::New

Inherits:
Object
  • Object
show all
Includes:
Helpers::Executable, Helpers::Rvm
Defined in:
lib/engineyard-local/middleware/rails/new.rb

Instance Method Summary collapse

Methods included from Helpers::Executable

#project_dir, #ssh_exec, #ssh_exec!

Methods included from Helpers::Rvm

#bash_rvm_setup, #export_ruby, #ruby_env_const, #rvm_env, #use_ruby_with_gemset

Constructor Details

#initialize(app, env, opts) ⇒ New



9
10
11
# File 'lib/engineyard-local/middleware/rails/new.rb', line 9

def initialize(app, env, opts)
  @app, @env, @opts = app, env, opts
end

Instance Method Details

#call(env) ⇒ Object



13
14
15
16
# File 'lib/engineyard-local/middleware/rails/new.rb', line 13

def call(env)
  ssh_exec!(env, commands)
  @app.call(env)
end

#command_argsObject



24
25
26
# File 'lib/engineyard-local/middleware/rails/new.rb', line 24

def command_args
  @opts["eylocal.rails.command_args"].join(" ")
end

#commandsObject



18
19
20
21
22
# File 'lib/engineyard-local/middleware/rails/new.rb', line 18

def commands
  #rvm_env +
    [ "cd #{project_dir}",
      "rails #{command_args}" ]
end