class DrawCloud::NetworkAcl
Attributes
entries[RW]
name[RW]
Public Class Methods
new(name, options={}, &block)
click to toggle source
Calls superclass method
DrawCloud::Base::new
# File lib/draw_cloud/network_acl.rb, line 22 def initialize(name, options={}, &block) @name = name @entries = [] super(options, &block) end
Public Instance Methods
allow_in(protocol, cidr=:any, ports_or_types=[])
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 32 def allow_in(protocol, cidr=:any, ports_or_types=[]) add_entry :allow, protocol, :ingress, cidr, ports_or_types end
allow_out(protocol, cidr=:any, ports_or_types=[])
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 36 def allow_out(protocol, cidr=:any, ports_or_types=[]) add_entry :allow, protocol, :egress, cidr, ports_or_types end
consumes(service)
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 51 def consumes(service) end
deny_in(protocol, cidr=:any, ports_or_types=[])
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 40 def deny_in(protocol, cidr=:any, ports_or_types=[]) add_entry :deny, protocol, :ingress, cidr, ports_or_types end
deny_out(protocol, cidr=:any, ports_or_types=[])
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 44 def deny_out(protocol, cidr=:any, ports_or_types=[]) add_entry :deny, protocol, :egress, cidr, ports_or_types end
load_into_config(config)
click to toggle source
Calls superclass method
DrawCloud::Base#load_into_config
# File lib/draw_cloud/network_acl.rb, line 60 def load_into_config(config) config.cf_add_resource resource_name, self ingress_index = 1 egress_index = 1 entries.each do |e| if e.outgoing? e.index = egress_index * 10 egress_index += 1 else e.index = ingress_index * 10 ingress_index += 1 end e.load_into_config(config) end super(config) end
network_acl()
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 28 def network_acl self end
provides(service)
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 48 def provides(service) end
resource_name()
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 78 def resource_name resource_style(name) + "NetworkACL" end
to_h()
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 82 def to_h h = { "Type" => "AWS::EC2::NetworkAcl", "Properties" => {} } h["Properties"]["VpcId"] = DrawCloud.ref(vpc) if vpc add_standard_properties(h) end
Private Instance Methods
add_entry(action, protocol, direction, cidr, ports_or_types)
click to toggle source
# File lib/draw_cloud/network_acl.rb, line 54 def add_entry(action, protocol, direction, cidr, ports_or_types) entries.concat NetworkAclEntry.entries_from_spec(action, protocol, direction, cidr, ports_or_types, :parent => self) end