Class: ECSUtil::Commands::ScaleCommand
- Inherits:
-
ECSUtil::Command
- Object
- ECSUtil::Command
- ECSUtil::Commands::ScaleCommand
- Defined in:
- lib/ecsutil/commands/scale.rb
Instance Attribute Summary
Attributes inherited from ECSUtil::Command
Instance Method Summary collapse
Methods inherited from ECSUtil::Command
Methods included from Shared
#deregister_scheduled_tasks, #deregister_secrets, #deregister_services, #deregister_tasks, #load_active_task_definitions, #load_secrets, #load_services
Methods included from Vault
#vault_edit, #vault_read, #vault_write
Methods included from AWS
#aws_call, #create_service, #degerister_task_definition, #delete_rule, #delete_service, #describe_service, #describe_services, #fetch_parameter_store_keys, #generate_event_rule, #generate_event_target, #generate_service, #generate_task_definition, #list_active_task_definitions, #list_rules, #list_services, #put_rule, #put_targets, #register_task_definition, #update_service
Methods included from Helpers
#array_hash, #confirm, #json_file, #parse_env_data, #step_info, #terminate
Constructor Details
This class inherits a constructor from ECSUtil::Command
Instance Method Details
#run ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/ecsutil/commands/scale.rb', line 2 def run services = config["services"] || {} terminate("No services found") if services.empty? services.each_pair do |service_name, service| info = describe_service(config, service_name) service["exists"] = true config["tasks"][service["task"]]["arn"] = info["taskDefinition"] if info["runningCount"] != service["desired_count"] step_info "Scaling #{service_name} from %d to %d", info["runningCount"], service["desired_count"] update_service(config, service_name) else step_info "Scaling is skipped on #{service_name}. Requested: %d, actual %d", service["desired_count"], info["runningCount"] end end end |