Module: ECSUtil::Shared

Included in:
Command
Defined in:
lib/ecsutil/shared.rb

Instance Method Summary collapse

Instance Method Details

#deregister_scheduled_tasksObject



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

def deregister_scheduled_tasks
  prefix = sprintf("%s-%s", config["app"], config["env"])

  list_rules.each do |rule|
    next unless rule["Name"].start_with?(prefix)

    task_name = rule["Name"].sub(prefix + "-", "")
    next if config["scheduled_tasks"][task_name]
  
    step_info "Removing scheduled task: #{task_name}"
    delete_rule(rule["Name"])
  end
end

#deregister_secretsObject



60
61
62
63
64
65
# File 'lib/ecsutil/shared.rb', line 60

def deregister_secrets
  (config["secrets_data"] || []).each do |secret|
    step_info "Removing %s", secret[:name]
    aws_call("ssm", "delete-parameter", "--name=#{secret[:name]}")
  end
end

#deregister_servicesObject



45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/ecsutil/shared.rb', line 45

def deregister_services
  key          = sprintf("%s-%s", config["app"], config["env"])
  current_keys = config["services"].map do |k, _|
    sprintf("%s-%s", key, k)
  end
  
  @existing_services.each do |service|
    next unless service.start_with?(key)
    next if current_keys.include?(service)

    step_info "Deleting service: #{service}"
    delete_service(config, service)
  end
end

#deregister_tasksObject



19
20
21
22
23
24
25
26
27
28
29
# File 'lib/ecsutil/shared.rb', line 19

def deregister_tasks
  prefix = sprintf("%s-%s", config["app"], config["env"])

  @existing_tasks.each do |arn|
    name = arn.split("/", 2).last
    next unless name.start_with?(prefix)

    step_info "Deregistering #{arn}"
    degerister_task_definition(arn)
  end
end

#load_active_task_definitionsObject



3
4
5
6
7
# File 'lib/ecsutil/shared.rb', line 3

def load_active_task_definitions
  step_info "Loading active task definitions"
  @existing_tasks = list_active_task_definitions
  @existing_tasks
end

#load_secretsObject



9
10
11
12
# File 'lib/ecsutil/shared.rb', line 9

def load_secrets
  step_info "Loading secrets from %s", config["secrets_prefix"]
  @config["secrets_data"] = fetch_parameter_store_keys(config["secrets_prefix"])
end

#load_servicesObject



14
15
16
17
# File 'lib/ecsutil/shared.rb', line 14

def load_services
  step_info "Loading services"
  @existing_services = list_services(config["cluster"])
end