module Cfer::Groups::ResourceGroup
Attributes
stack[R]
Public Class Methods
new(name, type, stack, **options, &block)
click to toggle source
Calls superclass method
# File lib/cfer/groups/resource_group.rb, line 6 def initialize(name, type, stack, **options, &block) @group_name = name @resource_type = type options = { DependsOn: [] }.merge(options) super name, "AWS::CloudFormation::WaitConditionHandle", stack, options do self.instance_exec &block if block self[:Metadata] = { Type: type, Properties: self[:Properties] } end Docile.dsl_eval self, self[:Properties] do self.instance_exec self[:Properties], &self.class.block if self.class.block end self[:Properties] = {} end
Public Instance Methods
get_att(obj, att)
click to toggle source
# File lib/cfer/groups/resource_group.rb, line 60 def get_att(obj, att) Cfer::Core::Functions::Fn::get_att name_of(obj), att end
name_of(name)
click to toggle source
# File lib/cfer/groups/resource_group.rb, line 48 def name_of(name) "#{@group_name}#{name}" end
output(name, value, options = {})
click to toggle source
# File lib/cfer/groups/resource_group.rb, line 44 def output(name, value, options = {}) stack.output name_of(name), value, options end
parameter(name, options = {})
click to toggle source
# File lib/cfer/groups/resource_group.rb, line 56 def parameter(name, options = {}) stack.parameter name_of(name), options end
ref(obj)
click to toggle source
# File lib/cfer/groups/resource_group.rb, line 52 def ref(obj) Cfer::Core::Functions::Fn::ref name_of(obj) end
resource(name, type, options = {}, &block)
click to toggle source
# File lib/cfer/groups/resource_group.rb, line 25 def resource(name, type, options = {}, &block) rc_name = name_of(name) self[:DependsOn] << rc_name group = self rc = @stack.resource rc_name, type, options do self.cfer_resource_group = group self.instance_eval &block end if self[:Tags] self[:Tags].each do |t| rc.tag t["Key"], t["Value"] end end rc end