Sha256: 055b4d1aab579d42b0926a601e6b2ffee1eed19514079ad513888b592b3673db
Contents?: true
Size: 1.59 KB
Versions: 32
Compression:
Stored size: 1.59 KB
Contents
require_relative '../resource' require_relative 'aws_ec2_subnet_route_table_association' module Convection module DSL module Template module Resource ## # Add DSL for RouteTableAssocaition ## module EC2Subnet def route_table(table, &block) assoc = Model::Template::Resource::EC2SubnetRouteTableAssociation.new("#{ name }RouteTableAssociation#{ table.name }", template) assoc.route_table(table) assoc.subnet(self) assoc.instance_exec(&block) if block @template.resources[assoc.name] = assoc end def acl(acl_entity, &block) assoc = Model::Template::Resource::EC2SubnetNetworkACLAssociation.new("#{ name }ACLAssociation#{ acl_entity.name }", template) assoc.acl(acl_entity) assoc.subnet(self) assoc.instance_exec(&block) if block @template.resources[assoc.name] = assoc end end end end end module Model class Template class Resource ## # AWS::EC2::Subnet ## class EC2Subnet < Resource include DSL::Template::Resource::EC2Subnet include Model::Mixin::Taggable extend Mixin::CIDRBlock type 'AWS::EC2::Subnet' property :availability_zone, 'AvailabilityZone' property :vpc, 'VpcId' cidr_property :network, 'CidrBlock' def render(*args) super.tap do |resource| render_tags(resource) end end end end end end end
Version data entries
32 entries across 32 versions & 1 rubygems