Class: Appfront::Command::Ps

Inherits:
Base
  • Object
show all
Defined in:
lib/appfront/command/ps.rb

Class Method Summary collapse

Class Method Details

.force_restart(args, opts) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/appfront/command/ps.rb', line 17

def self.force_restart(args, opts)
  find_deploy! opts
  api.put "/flow/#{@deploy}/force-restart"

  spinner "Force restarting Deploy..." do
    loop do
      sleep 3
      info = api.get "/flow/#{@deploy}"
      break if info['status'] == 'running'
    end
  end
  puts "\n"
end

.reload(args, opts) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/appfront/command/ps.rb', line 3

def self.reload(args, opts)
  find_deploy! opts
  api.put "/flow/#{@deploy}/reload"

  spinner "Reloading Deploy..." do
    loop do
      sleep 3
      info = api.get "/flow/#{@deploy}"
      break if info['status'] == 'running' or info['status'] == 'pending_reload'
    end
  end
  puts "\n"
end

.scale(settings, opts) ⇒ Object



64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/appfront/command/ps.rb', line 64

def self.scale(settings, opts)
  find_deploy! opts

  count, mode = nil
  settings.each do |s|
    p, v = s.split('=',2)
    count  = v if p == 'instances'
    mode = nil
  end

  unless count
    puts 'Usage: appfront ps:scale instances=N'
    exit 1
  end

  api.put "/flow/#{@deploy}/scale", instances: count

  spinner "Scaling deploy instances..." do
    loop do
      sleep 3
      info = api.get "/flow/#{@deploy}"
      break if info['status'] == 'running' or info['status'] == 'new' or info['status'] == 'pending_recovery'
    end
  end

  puts "Now deploying #{count} instances"
end

.scale_down(opts) ⇒ Object



54
55
56
57
58
59
60
61
62
# File 'lib/appfront/command/ps.rb', line 54

def self.scale_down(opts)
  find_deploy! opts

  spinner "Scaling down deploy instances..." do
      api.put "/flow/#{@deploy}/scale/down"
  end

  puts "\n"
end

.scale_up(opts) ⇒ Object



45
46
47
48
49
50
51
52
# File 'lib/appfront/command/ps.rb', line 45

def self.scale_up(opts)
  find_deploy! opts

  spinner "Scaling up deploy instances..." do
      api.put "/flow/#{@deploy}/scale/up"
  end
  puts "\n"
end

.stop(args, opts) ⇒ Object



31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/appfront/command/ps.rb', line 31

def self.stop(args, opts)
  find_deploy! opts
  api.put "/flow/#{@deploy}/stop"

  spinner "Stopping Deploy..." do
    loop do
      sleep 3
      info = api.get "/flow/#{@deploy}"
      break if info['status'] == 'deactivated'
    end
  end
  puts "\n"
end