Class: CfnDsl::JSONable

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

Instance Method Summary collapse

Instance Method Details

#env_ebs_options(env = nil) ⇒ Object



45
46
47
48
49
50
51
52
53
# File 'lib/aws_as_code.rb', line 45

def env_ebs_options(env = nil)
  params(env).map do |name, data|
    {
      Namespace: "aws:elasticbeanstalk:application:environment",
      OptionName: data["_ext"]["env"],
      Value: Ref(name)
    }
  end
end

#env_passthrough(env = nil) ⇒ Object



36
37
38
39
40
41
42
43
# File 'lib/aws_as_code.rb', line 36

def env_passthrough(env = nil)
  Hash[
    params(env).to_a.map do |pair|
      k = pair.first
      [k, Ref(k)]
    end
  ]
end

#inputs(env = nil) ⇒ Object



25
26
27
28
29
30
31
32
33
34
# File 'lib/aws_as_code.rb', line 25

def inputs(env = nil)
  params(env).each do |name, data|
    Parameter name do
      parameter_type data["Type"]

      Default data["Default"] unless data["Default"].nil?
      Description data["Description"] unless data["Description"].nil?
    end
  end
end

#parameter_type(type) ⇒ Object



16
17
18
19
20
21
22
23
# File 'lib/aws_as_code.rb', line 16

def parameter_type(type)
  case type
  when "String" then String()
  when "Number" then Number()
  when "CommaDelimitedList" then CommaDelimitedList()
  else raise ArgumentError, "Unknown parameter type #{type}"
  end
end