Skip to content

Commit

Permalink
Merge 124f127 into da24950
Browse files Browse the repository at this point in the history
  • Loading branch information
arkadiyt committed Nov 7, 2019
2 parents da24950 + 124f127 commit 7f30a53
Show file tree
Hide file tree
Showing 3 changed files with 131 additions and 1 deletion.
8 changes: 7 additions & 1 deletion lib/aws_public_ips/checks/ec2.rb
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,13 @@ def self.run
# EC2-Classic instances have a `public_ip_address` and no `network_interfaces`
# EC2-VPC instances both set, so we uniq the ip addresses
ip_addresses = [instance.public_ip_address].compact + instance.network_interfaces.flat_map do |interface|
public_ip = interface.association ? [interface.association.public_ip].compact : []
public_ip = []

interface.private_ip_addresses.flat_map do |private_ip|
if private_ip.association && private_ip.association.public_ip
public_ip << private_ip.association.public_ip
end
end
public_ip + interface.ipv_6_addresses.map(&:ipv_6_address)
end

Expand Down
5 changes: 5 additions & 0 deletions spec/aws_public_ips/checks/ec2_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,11 @@
id: 'i-03a7b3bc2b4c20742',
hostname: nil,
ip_addresses: %w[2600:1f18:60f3:eb00:1c6e:5184:8955:170c]
},
{
id: 'i-01e4cbbe2c7fb98f6',
hostname: 'ec2-50-112-85-68.us-west-2.compute.amazonaws.com',
ip_addresses: %w[50.112.85.68 54.214.97.117]
}
])
end
Expand Down
119 changes: 119 additions & 0 deletions spec/fixtures/ec2.xml
Original file line number Diff line number Diff line change
Expand Up @@ -327,6 +327,125 @@
<threadsPerCore>2</threadsPerCore>
</cpuOptions>
</item>
<item>
<instanceId>i-01e4cbbe2c7fb98f6</instanceId>
<imageId>ami-01e24be29428c15b2</imageId>
<instanceState>
<code>16</code>
<name>running</name>
</instanceState>
<privateDnsName>ip-10-31-42-214.us-west-2.compute.internal</privateDnsName>
<dnsName>ec2-50-112-85-68.us-west-2.compute.amazonaws.com</dnsName>
<reason/>
<amiLaunchIndex>0</amiLaunchIndex>
<productCodes/>
<instanceType>t2.nano</instanceType>
<launchTime>2019-05-10T15:11:49.000Z</launchTime>
<placement>
<availabilityZone>us-west-2a</availabilityZone>
<groupName/>
<tenancy>default</tenancy>
</placement>
<monitoring>
<state>disabled</state>
</monitoring>
<subnetId>subnet-f4be30fb</subnetId>
<vpcId>vpc-23a48958</vpcId>
<privateIpAddress>10.31.42.214</privateIpAddress>
<ipAddress>50.112.85.68</ipAddress>
<sourceDestCheck>true</sourceDestCheck>
<groupSet>
<item>
<groupId>sg-6ab45e01</groupId>
<groupName>default</groupName>
</item>
</groupSet>
<architecture>x86_64</architecture>
<rootDeviceType>ebs</rootDeviceType>
<rootDeviceName>/dev/xvda</rootDeviceName>
<blockDeviceMapping>
<item>
<deviceName>/dev/xvda</deviceName>
<ebs>
<volumeId>vol-0964259d35f8ba06f</volumeId>
<status>attached</status>
<attachTime>2019-05-10T15:11:49.000Z</attachTime>
<deleteOnTermination>true</deleteOnTermination>
</ebs>
</item>
</blockDeviceMapping>
<virtualizationType>hvm</virtualizationType>
<clientToken/>
<hypervisor>xen</hypervisor>
<networkInterfaceSet>
<item>
<networkInterfaceId>eni-0e77318599790bcd2</networkInterfaceId>
<subnetId>subnet-f4be30fb</subnetId>
<vpcId>vpc-23a48958</vpcId>
<description/>
<ownerId>154967844790</ownerId>
<status>in-use</status>
<macAddress>06:a1:e2:ce:32:16</macAddress>
<privateIpAddress>10.31.42.214</privateIpAddress>
<privateDnsName>ip-10-31-42-214.us-west-2.compute.internal</privateDnsName>
<sourceDestCheck>true</sourceDestCheck>
<groupSet>
<item>
<groupId>sg-6ab45e01</groupId>
<groupName>default</groupName>
</item>
</groupSet>
<attachment>
<attachmentId>eni-attach-0e1004d8f294c30ca</attachmentId>
<deviceIndex>0</deviceIndex>
<status>attached</status>
<attachTime>2019-05-10T15:11:49.000Z</attachTime>
<deleteOnTermination>true</deleteOnTermination>
</attachment>
<association>
<publicIp>50.112.85.68</publicIp>
<publicDnsName>ec2-50-112-85-68.us-west-2.compute.amazonaws.com</publicDnsName>
<ipOwnerId>154967844790</ipOwnerId>
</association>
<privateIpAddressesSet>
<item>
<privateIpAddress>10.31.42.214</privateIpAddress>
<privateDnsName>ip-10-31-42-214.us-west-2.compute.internal</privateDnsName>
<primary>true</primary>
<association>
<publicIp>50.112.85.68</publicIp>
<publicDnsName>ec2-50-112-85-68.us-west-2.compute.amazonaws.com</publicDnsName>
<ipOwnerId>154967844790</ipOwnerId>
</association>
</item>
<item>
<privateIpAddress>10.31.32.64</privateIpAddress>
<privateDnsName>ip-10-31-32-64.us-west-2.compute.internal</privateDnsName>
<primary>false</primary>
<association>
<publicIp>54.214.97.117</publicIp>
<publicDnsName>ec2-54-214-97-117.us-west-2.compute.amazonaws.com</publicDnsName>
<ipOwnerId>154967844790</ipOwnerId>
</association>
</item>
</privateIpAddressesSet>
<ipv6AddressesSet/>
<interfaceType>interface</interfaceType>
</item>
</networkInterfaceSet>
<ebsOptimized>false</ebsOptimized>
<enaSupport>true</enaSupport>
<cpuOptions>
<coreCount>1</coreCount>
<threadsPerCore>1</threadsPerCore>
</cpuOptions>
<capacityReservationSpecification>
<capacityReservationPreference>open</capacityReservationPreference>
</capacityReservationSpecification>
<hibernationOptions>
<configured>false</configured>
</hibernationOptions>
</item>
</instancesSet>
</item>
</reservationSet>
Expand Down

0 comments on commit 7f30a53

Please sign in to comment.