class AwsEc2DnsName
Attributes
client[RW]
Public Class Methods
new(region: nil, access_key_id: nil, secret_access_key: nil)
click to toggle source
@param [String] region @param [String] access_key_id @param [String] secret_access_key
# File lib/aws-ec2-dns-name.rb, line 10 def initialize(region: nil, access_key_id: nil, secret_access_key: nil) self.client = Aws::EC2::Client.new(region: region, access_key_id: access_key_id, secret_access_key: secret_access_key) end
Public Instance Methods
list()
click to toggle source
@return [Array<Hash>]
# File lib/aws-ec2-dns-name.rb, line 17 def list client.describe_instances.first.reservations.map do |reservation| instance = reservation.instances.first name_tag = instance.tags.find { |tag| tag.key == "Name" }.value dns_name = dns_name(instance) next if dns_name.nil? { name_tag: name_tag, dns_name: dns_name, } end.sort_by { |h| h[:name_tag] } end
Private Instance Methods
dns_name(instance)
click to toggle source
@param @return [String, NilClass]
# File lib/aws-ec2-dns-name.rb, line 35 def dns_name(instance) public_dns_name = instance.public_dns_name private_dns_name = instance.private_dns_name if public_dns_name.empty? private_dns_name else public_dns_name end end