Class: DynoScaler::Heroku

Inherits:
Object
  • Object
show all
Defined in:
lib/dyno_scaler/heroku.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(application, options = {}) ⇒ Heroku

Returns a new instance of Heroku.



7
8
9
10
# File 'lib/dyno_scaler/heroku.rb', line 7

def initialize(application, options={})
  self.application = application
  self.options     = options || {}
end

Instance Attribute Details

#applicationObject

Returns the value of attribute application.



5
6
7
# File 'lib/dyno_scaler/heroku.rb', line 5

def application
  @application
end

#optionsObject

Returns the value of attribute options.



5
6
7
# File 'lib/dyno_scaler/heroku.rb', line 5

def options
  @options
end

Instance Method Details

#running_workersObject



16
17
18
19
20
# File 'lib/dyno_scaler/heroku.rb', line 16

def running_workers
  heroku_client.get_ps(application).body.select do |process|
    process['process'].start_with?('worker')
  end.count
end

#scale_workers(quantity) ⇒ Object



12
13
14
# File 'lib/dyno_scaler/heroku.rb', line 12

def scale_workers(quantity)
  heroku_client.post_ps_scale(application, 'worker', quantity)
end