Method: CloudProviders::Ec2.load_keys_from_credential_file

Defined in:
lib/cloud_providers/ec2/ec2.rb

.load_keys_from_credential_file(filename = default_credential_file, caching = true) ⇒ Object

Load credentials from file



61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/cloud_providers/ec2/ec2.rb', line 61

def self.load_keys_from_credential_file(filename=default_credential_file, caching=true)
  return {:access_key => @access_key, :secret_access_key => @secret_access_key} if @access_key and @secret_access_key and caching
  return {} if filename.nil? or not File.exists?(filename)
  puts("Reading keys from file: #{filename}")
  File.open(filename).each_line { |line|
    if line =~ /AWSAccessKeyId=([a-zA-Z0-9]+)$/
      @access_key=$1.chomp
    elsif line =~ /AWSSecretKey=([^   ]+)$/
      @secret_access_key=$1.chomp
    end
  }
  return {:access_key => @access_key, :secret_access_key => @secret_access_key}
end