Method: Cron::Server#auto_scale

Defined in:
lib/app/jobs/cron/server.rb

#auto_scale(desired_count = 0) ⇒ Object

Sets the desired and minimum number of EC2 instances to run



264
265
266
267
268
269
270
271
272
273
274
# File 'lib/app/jobs/cron/server.rb', line 264

def auto_scale(desired_count = 0)
  set desired_server_count: desired_count
  # Make sure we don't remove any workers with assigned jobs by accident
  return if desired_count.positive? && desired_count <= current_desired_capacity

  client.update_auto_scaling_group(auto_scaling_group_name: sys_config.aws_auto_scaling_group_name,
                                   min_size: desired_count,
                                   desired_capacity: desired_count)
rescue StandardError => error
  App47Logger.log_error "Unable to set auto scaler to #{desired_count}", error
end