Class: EC2::UserData

Inherits:
Object
  • Object
show all
Defined in:
lib/ec2_userdata.rb

Class Method Summary collapse

Class Method Details

.[](key) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/ec2_userdata.rb', line 8

def self.[](key)
  unless defined?(@userdata)
    if EC2.ec2? && !use_local_config?
      logger.info "Running on EC2. Reading user data from http://169.254.169.254/1.0/user-data" if logger
      @userdata = get_ec2_userdata
    else
      logger.info "Reading user data from #{app_root}/config/ec2_userdata.yml." if logger
      @userdata = get_local_userdata
    end
  end

  @userdata[key]
end

.use_local_config!Object

Force use of local configuration file even when running on EC2



23
24
25
# File 'lib/ec2_userdata.rb', line 23

def self.use_local_config!
  @use_local_config = true
end

.use_local_config?Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/ec2_userdata.rb', line 27

def self.use_local_config?
  @use_local_config == true
end