Module: ECSD::Helpers::Common

Included in:
Core
Defined in:
lib/ecsd/helpers/common.rb

Instance Method Summary collapse

Instance Method Details

#cluster_name(task) ⇒ Object



30
31
32
33
34
# File 'lib/ecsd/helpers/common.rb', line 30

def cluster_name(task)
  task.cluster_arn
      .split('/')
      .last
end

#dyn_port(task_container) ⇒ Object



40
41
42
43
44
# File 'lib/ecsd/helpers/common.rb', line 40

def dyn_port(task_container)
  task_container.network_bindings
                .first
                .host_port
end

#task_container(task) ⇒ Object



36
37
38
# File 'lib/ecsd/helpers/common.rb', line 36

def task_container(task)
  task.containers.find { |c| c.task_arn == task.task_arn }
end

#task_definition_data(task) ⇒ Object



23
24
25
26
27
28
# File 'lib/ecsd/helpers/common.rb', line 23

def task_definition_data(task)
  task.task_definition_arn
      .split('/')
      .last
      .split(':')
end

#task_id(task) ⇒ Object



17
18
19
20
21
# File 'lib/ecsd/helpers/common.rb', line 17

def task_id(task)
  task.task_arn
      .split('/')
      .last
end

#write_to_file(cluster, data, path = ECSD.config.options[:export_path] || DEFAULT_EXPORT_PATH) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/ecsd/helpers/common.rb', line 4

def write_to_file(cluster, data, path = ECSD.config.options[:export_path] || DEFAULT_EXPORT_PATH)
  format = ECSD.config.options[:export_format]
  content = case format
            when ECSD::Constants::FORMATS[:yml]
              YAML.dump(data)
            when ECSD::Constants::FORMATS[:json]
              data.to_json
            end
  File.open("#{path}/#{cluster.downcase}.#{format}", 'w') do |f|
    f.write(content)
  end
end