Module: Cumulus::EC2::InstanceLoader

Includes:
Common::BaseLoader
Defined in:
lib/ec2/loaders/InstanceLoader.rb

Constant Summary collapse

@@instances_dir =
Configuration.instance.ec2.instances_directory
@@user_data_dir =
Configuration.instance.ec2.user_data_directory

Class Method Summary collapse

Methods included from Common::BaseLoader

load_file, resource, resources, template

Class Method Details

.instancesObject



15
16
17
# File 'lib/ec2/loaders/InstanceLoader.rb', line 15

def self.instances
  Common::BaseLoader::resources(@@instances_dir, &InstanceConfig.method(:new))
end

.user_data(file) ⇒ Object



19
20
21
# File 'lib/ec2/loaders/InstanceLoader.rb', line 19

def self.user_data(file)
  Common::BaseLoader::load_file(file, @@user_data_dir)
end

.user_data_base64Object

Public: Returns a Hash of user data file name to base64 of its contents.



24
25
26
27
28
# File 'lib/ec2/loaders/InstanceLoader.rb', line 24

def self.user_data_base64
  @user_data_base64 ||= Hash[Common::BaseLoader::resources(@@user_data_dir, false, &Proc.new do |name, contents|
    [name, Base64.encode64(contents)]
  end)]
end