class Ec2::Config
Public Class Methods
new(config_path)
click to toggle source
# File lib/ec2/config.rb, line 7 def initialize(config_path) @config_path = config_path end
Public Instance Methods
config()
click to toggle source
# File lib/ec2/config.rb, line 11 def config return @config if @config @config = { region: "ap-southeast-1", use_iam: true } read_config return @config end
Private Instance Methods
aws_key(aws_key)
click to toggle source
# File lib/ec2/config.rb, line 31 def aws_key(aws_key) set :aws_key, aws_key set :use_iam, false end
aws_secret(aws_secret)
click to toggle source
# File lib/ec2/config.rb, line 36 def aws_secret(aws_secret) set :aws_secret, aws_secret set :use_iam, false end
read(file, required: true)
click to toggle source
# File lib/ec2/config.rb, line 50 def read(file, required: true) if not File.readable? file raise error "config: #{file} not readable" if required return end instance_eval(File.read(file), file) rescue NoMethodError => e error "invalid option used in config: #{e.name}" end
read_config()
click to toggle source
# File lib/ec2/config.rb, line 45 def read_config read("#{Dir.home}/.ec2.rb", required: false) read(@config_path, required: false) end
region(region)
click to toggle source
# File lib/ec2/config.rb, line 23 def region(region) set :region, region end
set(key, value)
click to toggle source
# File lib/ec2/config.rb, line 41 def set(key, value) @config.store key, value end
vpc_id(vpc)
click to toggle source
# File lib/ec2/config.rb, line 27 def vpc_id(vpc) set :vpc_id, vpc end