module Audit53::EC2

Public Class Methods

client(region:) click to toggle source
# File lib/audit53/ec2.rb, line 9
def self.client(region:)
  Aws::EC2::Client.new region: region
end
instances(region:) click to toggle source
# File lib/audit53/ec2.rb, line 14
def self.instances(region:)
  client(region: region).describe_instances.each_page
    .flat_map(&:reservations)
    .flat_map(&:instances)
end
ips() click to toggle source
# File lib/audit53/ec2.rb, line 21
def self.ips
  @ips ||= %w(us-east-1 us-west-1 us-west-2 eu-west-1)
                 .flat_map { |r| instances region: r }
                 .map { |i| { i.public_ip_address => i.instance_id } }
                 .reduce({}, :update)
end