Class: Fog::Compute::AWS::NetworkAcls

Inherits:
Fog::Collection
  • Object
show all
Defined in:
lib/fog/aws/models/compute/network_acls.rb

Instance Method Summary collapse

Constructor Details

#initialize(attributes) ⇒ NetworkAcls

Creates a new network ACL

AWS.network_acls.new

Returns

Returns the details of the new network ACL

>> <Fog::Compute::AWS::NetworkAcl

network_acl_id=nil,
vpc_id=nil,
default=nil,
entries=nil,
associations=nil,
tags=nil

>



29
30
31
32
# File 'lib/fog/aws/models/compute/network_acls.rb', line 29

def initialize(attributes)
  self.filters ||= {}
  super
end

Instance Method Details

#all(filters = filters) ⇒ Object

Returns an array of all network ACLs that have been created

AWS.network_acls.all

Returns

Returns an array of all network ACLs

>> AWS.network_acls.all

<Fog::AWS::Compute::NetworkAcls
  filters={}
  [
    <Fog::Compute::AWS::NetworkAcl
      network_acl_id="acl-abcdefgh",
      vpc_id="vpc-abcdefgh",
      default=true,
      entries=[
        {
          "icmpTypeCode" => {},
          "portRange"    => {},
          "ruleNumber"   => 32767,
          "protocol"     => -1,
          "ruleAction"   => "deny",
          "egress"       => false,
          "cidrBlock"    => "0.0.0.0/0"
        },
        {
          "icmpTypeCode" => {},
          "portRange"    => {},
          "ruleNumber"   => 32767,
          "protocol"     => -1,
          "ruleAction"   => "deny",
          "egress"       => true,
          "cidrBlock"    => "0.0.0.0/0"
        }
      ],
      associations=[
        {
          "networkAclAssociationId" => "aclassoc-abcdefgh",
          "networkAclId"            => "acl-abcdefgh",
          "subnetId"                => "subnet-abcdefgh"
        }
      ],
      tags={}
    >
  ]
>


82
83
84
85
86
# File 'lib/fog/aws/models/compute/network_acls.rb', line 82

def all(filters = filters)
  self.filters = filters
  data = service.describe_network_acls(filters).body
  load(data['networkAclSet'])
end

#get(nacl_id) ⇒ Object

Used to retrieve a network interface network interface id is required to get any information

You can run the following command to get the details: AWS.network_interfaces.get(“eni-11223344”)

Returns

>> AWS.network_acls.get(“acl-abcdefgh”)

<Fog::Compute::AWS::NetworkAcl
  network_acl_id="acl-abcdefgh",
  vpc_id="vpc-abcdefgh",
  default=true,
  entries=[
    {
      "icmpTypeCode" => {},
      "portRange"    => {},
      "ruleNumber"   => 32767,
      "protocol"     => -1,
      "ruleAction"   => "deny",
      "egress"       => false,
      "cidrBlock"    => "0.0.0.0/0"
    },
    {
      "icmpTypeCode" => {},
      "portRange"    => {},
      "ruleNumber"   => 32767,
      "protocol"     => -1,
      "ruleAction"   => "deny",
      "egress"       => true,
      "cidrBlock"    => "0.0.0.0/0"
    }
  ],
  associations=[
    {
      "networkAclAssociationId" => "aclassoc-abcdefgh",
      "networkAclId"            => "acl-abcdefgh",
      "subnetId"                => "subnet-abcdefgh"
    }
  ],
  tags={}
>


130
131
132
# File 'lib/fog/aws/models/compute/network_acls.rb', line 130

def get(nacl_id)
  self.class.new(:service => service).all('network-acl-id' => nacl_id).first if nacl_id
end