Module: RubyAemAws::AbstractGroupedComponent

Includes:
AbstractComponent
Included in:
Component::AuthorDispatcher, Component::ChaosMonkey, Component::Orchestrator, Component::Publish, Component::PublishDispatcher
Defined in:
lib/ruby_aem_aws/abstract/grouped_component.rb

Overview

Add common methods to all Components.

Instance Method Summary collapse

Methods included from AbstractComponent

#to_s

Methods included from InstanceDescriber

#describe_instance, #describe_instances

Instance Method Details

#get_all_instancesObject



23
24
25
# File 'lib/ruby_aem_aws/abstract/grouped_component.rb', line 23

def get_all_instances
  ec2_resource.instances(filter_for_descriptor)
end

#get_instance_by_id(instance_id) ⇒ Object



27
28
29
# File 'lib/ruby_aem_aws/abstract/grouped_component.rb', line 27

def get_instance_by_id(instance_id)
  ec2_resource.instance(instance_id)
end

#get_num_of_instancesObject



31
32
33
# File 'lib/ruby_aem_aws/abstract/grouped_component.rb', line 31

def get_num_of_instances
  get_all_instances.entries.length
end

#get_random_instanceObject



35
36
37
# File 'lib/ruby_aem_aws/abstract/grouped_component.rb', line 35

def get_random_instance
  get_all_instances.entries.sample
end