Module: CuffBase

Defined in:
lib/cuffbase.rb

Class Method Summary collapse

Class Method Details

.defaults_from_template(io) ⇒ Object



14
15
16
# File 'lib/cuffbase.rb', line 14

def self.defaults_from_template(io)
  self.template_parameters(io) {|data| data['Default'] }
end

.empty_from_template(io) ⇒ Object



10
11
12
# File 'lib/cuffbase.rb', line 10

def self.empty_from_template(io)
  self.template_parameters(io) {|_| nil }
end

.shared_cli_args(opts, args) ⇒ Object



4
5
6
7
8
# File 'lib/cuffbase.rb', line 4

def self.shared_cli_args(opts, args)
  opts.on('--region=aws_region', 'AWS region, overrides env variable AWS_REGION') do |region|
    args[:aws_region] = region
  end
end

.template_parameters(io, &block) ⇒ Object



20
21
22
23
24
25
26
27
# File 'lib/cuffbase.rb', line 20

def self.template_parameters(io, &block)
  template = YAML.load(io)
  parameters = {}
  (template['Parameters'] || []).each do |key, data|
    parameters[key] = block.call(data)
  end
  parameters
end