Class: EY::ServersideRunner

Inherits:
Object
  • Object
show all
Defined in:
lib/engineyard/serverside_runner.rb

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ ServersideRunner

Returns a new instance of ServersideRunner.



7
8
9
10
11
12
13
14
15
# File 'lib/engineyard/serverside_runner.rb', line 7

def initialize(options)
  @verbose        = options[:verbose] || !!ENV['DEBUG']
  @hostname       = options[:bridge]
  env             = options[:environment]
  @adapter        = load_adapter(@hostname, options[:app], env, @verbose, options[:serverside_version])
  @username       = env.username
  @hierarchy_name = env.hierarchy_name
  @command        = nil
end

Instance Method Details

#call(out, err) ⇒ Object



42
43
44
45
46
47
# File 'lib/engineyard/serverside_runner.rb', line 42

def call(out, err)
  raise "No command!" unless @command
  @command.call do |cmd|
    run cmd, out, err
  end
end

#deploy(&block) ⇒ Object



17
18
19
20
# File 'lib/engineyard/serverside_runner.rb', line 17

def deploy(&block)
  @command = @adapter.deploy(&block)
  self
end

#put_up_maintenance_page(&block) ⇒ Object



32
33
34
35
# File 'lib/engineyard/serverside_runner.rb', line 32

def put_up_maintenance_page(&block)
  @command = @adapter.enable_maintenance(&block)
  self
end

#restart(&block) ⇒ Object



27
28
29
30
# File 'lib/engineyard/serverside_runner.rb', line 27

def restart(&block)
  @command = @adapter.restart(&block)
  self
end

#rollback(&block) ⇒ Object



22
23
24
25
# File 'lib/engineyard/serverside_runner.rb', line 22

def rollback(&block)
  @command = @adapter.rollback(&block)
  self
end

#take_down_maintenance_page(&block) ⇒ Object



37
38
39
40
# File 'lib/engineyard/serverside_runner.rb', line 37

def take_down_maintenance_page(&block)
  @command = @adapter.disable_maintenance(&block)
  self
end