Module: Google::Cloud

Defined in:
lib/google-cloud-dns.rb,
lib/google/cloud/dns.rb,
lib/google/cloud/dns/zone.rb,
lib/google/cloud/dns/change.rb,
lib/google/cloud/dns/record.rb,
lib/google/cloud/dns/project.rb,
lib/google/cloud/dns/service.rb,
lib/google/cloud/dns/version.rb,
lib/google/cloud/dns/importer.rb,
lib/google/cloud/dns/zone/list.rb,
lib/google/cloud/dns/change/list.rb,
lib/google/cloud/dns/credentials.rb,
lib/google/cloud/dns/record/list.rb,
lib/google/cloud/dns/zone/transaction.rb

Defined Under Namespace

Modules: Dns

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.dns(project_id = nil, credentials = nil, scope: nil, retries: nil, timeout: nil) ⇒ Google::Cloud::Dns::Project

Creates a new Project instance connected to the DNS service. Each call creates a new connection.

For more information on connecting to Google Cloud see the Authentication Guide.

Examples:

require "google/cloud"

dns = Google::Cloud.dns "my-project", "/path/to/keyfile.json"

zone = dns.zone "example-com"

Parameters:

  • project_id (String) (defaults to: nil)

    Identifier for a DNS project. If not present, the default project for the credentials is used.

  • credentials (String, Hash, Google::Auth::Credentials) (defaults to: nil)

    The path to the keyfile as a String, the contents of the keyfile as a Hash, or a Google::Auth::Credentials object. (See Google::Cloud::Dns::Credentials)

  • scope (String, Array<String>) (defaults to: nil)

    The OAuth 2.0 scopes controlling the set of resources and operations that the connection can access. See Using OAuth 2.0 to Access Google APIs.

    The default scope is:

    • https://www.googleapis.com/auth/ndev.clouddns.readwrite
  • retries (Integer) (defaults to: nil)

    Number of times to retry requests on server error. The default value is 3. Optional.

  • timeout (Integer) (defaults to: nil)

    Default timeout to use in requests. Optional.

Returns:



107
108
109
110
111
112
# File 'lib/google-cloud-dns.rb', line 107

def self.dns project_id = nil, credentials = nil, scope: nil, retries: nil,
             timeout: nil
  require "google/cloud/dns"
  Google::Cloud::Dns.new project_id: project_id, credentials: credentials,
                         scope: scope, retries: retries, timeout: timeout
end

Instance Method Details

#dns(scope: nil, retries: nil, timeout: nil) ⇒ Google::Cloud::Dns::Project

Creates a new object for connecting to the DNS service. Each call creates a new connection.

For more information on connecting to Google Cloud see the Authentication Guide.

Examples:

require "google/cloud"

gcloud = Google::Cloud.new
dns = gcloud.dns
zone = dns.zone "example-com"
zone.records.each do |record|
  puts record.name
end

The default scope can be overridden with the scope option:

require "google/cloud"

gcloud  = Google::Cloud.new
dns_readonly = "https://www.googleapis.com/auth/ndev.clouddns.readonly"
dns = gcloud.dns scope: dns_readonly

Parameters:

  • scope (String, Array<String>) (defaults to: nil)

    The OAuth 2.0 scopes controlling the set of resources and operations that the connection can access. See Using OAuth 2.0 to Access Google APIs.

    The default scope is:

    • https://www.googleapis.com/auth/ndev.clouddns.readwrite
  • retries (Integer) (defaults to: nil)

    Number of times to retry requests on server error. The default value is 3. Optional.

  • timeout (Integer) (defaults to: nil)

    Default timeout to use in requests. Optional.

Returns:



66
67
68
69
70
71
72
# File 'lib/google-cloud-dns.rb', line 66

def dns scope: nil, retries: nil, timeout: nil
  retries ||= @retries
  timeout ||= @timeout
  Google::Cloud.dns @project, @keyfile, scope: scope,
                                        retries: retries,
                                        timeout: timeout
end