Class Fog::DNS::AWS::Real
In: lib/fog/aws/dns.rb
lib/fog/aws/requests/dns/change_resource_record_sets.rb
lib/fog/aws/requests/dns/list_hosted_zones.rb
lib/fog/aws/requests/dns/get_hosted_zone.rb
lib/fog/aws/requests/dns/delete_hosted_zone.rb
lib/fog/aws/requests/dns/get_change.rb
lib/fog/aws/requests/dns/create_hosted_zone.rb
lib/fog/aws/requests/dns/list_resource_record_sets.rb
Parent: Object

Methods

Included Modules

Fog::AWS::CredentialFetcher::ConnectionMethods

Public Class methods

Initialize connection to Route 53 DNS service

Notes

options parameter must include values for :aws_access_key_id and :aws_secret_access_key in order to create a connection

Examples

  dns = Fog::AWS::DNS.new(
    :aws_access_key_id => your_aws_access_key_id,
    :aws_secret_access_key => your_aws_secret_access_key
  )

Parameters

  • options<~Hash> - config arguments for connection. Defaults to {}.

Returns

  • dns object with connection to aws.

Public Instance methods

Use this action to create or change your authoritative DNS information for a zone docs.amazonwebservices.com/Route53/latest/DeveloperGuide/RRSchanges.html#RRSchanges_API

Parameters

  • zone_id<~String> - ID of the zone these changes apply to
  • options<~Hash>
    • comment<~String> - Any comments you want to include about the change.
  • change_batch<~Array> - The information for a change request
    • changes<~Hash> -
      • action<~String> - ‘CREATE’ or ‘DELETE‘
      • name<~String> - This must be a fully-specified name, ending with a final period
      • type<~String> - A | AAAA | CNAME | MX | NS | PTR | SOA | SPF | SRV | TXT
      • ttl<~Integer> - Time-to-live value - omit if using an alias record
      • resource_records<~Array> - Omit if using an alias record
      • alias_target<~Hash> - Information about the domain to which you are redirecting traffic (Alias record sets only)
        • dns_name<~String> - The Elastic Load Balancing domain to which you want to reroute traffic
        • hosted_zone_id<~String> - The ID of the hosted zone that contains the Elastic Load Balancing domain to which you want to reroute traffic

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘ChangeInfo’<~Hash>
        • ‘Id’<~String> - The ID of the request
        • ‘Status’<~String> - status of the request - PENDING | INSYNC
        • ‘SubmittedAt’<~String> - The date and time the change was made
    • status<~Integer> - 200 when successful

Examples

Example changing a CNAME record:

    change_batch_options = [
      {
        :action => "DELETE",
        :name => "foo.example.com.",
        :type => "CNAME",
        :ttl => 3600,
        :resource_records => [ "baz.example.com." ]
      },
      {
        :action => "CREATE",
        :name => "foo.example.com.",
        :type => "CNAME",
        :ttl => 3600,
        :resource_records => [ "bar.example.com." ]
      }
    ]

    change_resource_record_sets("ABCDEFGHIJKLMN", change_batch_options)

Creates a new hosted zone

Parameters

  • name<~String> - The name of the domain. Must be a fully-specified domain that ends with a period
  • options<~Hash>
    • caller_ref<~String> - unique string that identifies the request & allows failed
                            calls to be retried without the risk of executing the operation twice
      
    • comment<~String> -

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
    • status<~Integer> - 201 when successful

Delete a hosted zone

Parameters

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘ChangeInfo’<~Hash> -
        • ‘Id’<~String> The ID of the request
        • ‘Status’<~String> The current state of the hosted zone
        • ‘SubmittedAt’<~String> The date and time the change was made
    • status<~Integer> - 200 when successful

returns the current state of a change request

Parameters

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
    • status<~Integer> - 200 when successful

retrieve information about a hosted zone

Parameters

  • zone_id<~String> - The ID of the hosted zone

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘HostedZone’<~Hash>:
      • ‘NameServers’<~Array>
    • status<~Integer> - 200 when successful

Describe all or specified instances

Parameters

  • options<~Hash>
    • marker<~String> - Indicates where to begin in your list of hosted zones.
    • max_items<~Integer> - The maximum number of hosted zones to be included in the response body

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘HostedZones’<~Array>:
      • ‘Marker’<~String> -
      • ‘MaxItems’<~Integer> -
      • ‘IsTruncated’<~String> -
      • ‘NextMarket’<~String>
    • status<~Integer> - 200 when successful

list your resource record sets

Parameters

Returns

  • response<~Excon::Response>:
    • body<~Hash>:
      • ‘ResourceRecordSet’<~Array>:
        • ‘Name’<~String> -
        • ‘Type’<~String> -
        • ‘TTL’<~Integer> -
        • ‘AliasTarget’<~Hash> -
        • ‘ResourceRecords’<~Array>
      • ‘IsTruncated’<~String> -
      • ‘MaxItems’<~String> -
      • ‘NextRecordName’<~String>
      • ‘NextRecordType’<~String>
      • ‘NextRecordIdentifier’<~String>
    • status<~Integer> - 201 when successful

[Validate]