Method: Fog::Compute::AWS::Addresses#all

Defined in:
lib/fog/aws/models/compute/addresses.rb

#all(filters = filters) ⇒ Object

AWS.addresses.all

Returns

Returns an array of all IP addresses

>> AWS.addresses.all

<Fog::AWS::Compute::Addresses
  filters={},
  server=nil
  [
    <Fog::AWS::Compute::Address
      public_ip="76.7.46.54",
      server_id=nil
    >,
    .......
    <Fog::AWS::Compute::Address
      public_ip="4.88.524.95",
      server_id=nil
    >
  ]
>

>>

[View source]

57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/fog/aws/models/compute/addresses.rb', line 57

def all(filters = filters)
  unless filters.is_a?(Hash)
    Fog::Logger.deprecation("all with #{filters.class} param is deprecated, use all('public-ip' => []) instead [light_black](#{caller.first})[/]")
    filters = {'public-ip' => [*filters]}
  end
  self.filters = filters
  data = connection.describe_addresses(filters).body
  load(
    data['addressesSet'].map do |address|
      address.reject {|key, value| value.nil? || value.empty? }
    end
  )
  if server
    self.replace(self.select {|address| address.server_id == server.id})
  end
  self
end