Class: Google::Apis::DnsV1::ManagedZone

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/dns_v1/classes.rb,
generated/google/apis/dns_v1/representations.rb,
generated/google/apis/dns_v1/representations.rb

Overview

A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ManagedZone

Returns a new instance of ManagedZone.



444
445
446
# File 'generated/google/apis/dns_v1/classes.rb', line 444

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#creation_timeString

The time that this resource was created on the server. This is in RFC3339 text format. Output only. Corresponds to the JSON property creationTime

Returns:

  • (String)


353
354
355
# File 'generated/google/apis/dns_v1/classes.rb', line 353

def creation_time
  @creation_time
end

#descriptionString

A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function. Corresponds to the JSON property description

Returns:

  • (String)


359
360
361
# File 'generated/google/apis/dns_v1/classes.rb', line 359

def description
  @description
end

#dns_nameString

The DNS name of this managed zone, for instance "example.com.". Corresponds to the JSON property dnsName

Returns:

  • (String)


364
365
366
# File 'generated/google/apis/dns_v1/classes.rb', line 364

def dns_name
  @dns_name
end

#dnssec_configGoogle::Apis::DnsV1::ManagedZoneDnsSecConfig

DNSSEC configuration. Corresponds to the JSON property dnssecConfig



369
370
371
# File 'generated/google/apis/dns_v1/classes.rb', line 369

def dnssec_config
  @dnssec_config
end

#forwarding_configGoogle::Apis::DnsV1::ManagedZoneForwardingConfig

The presence for this field indicates that outbound forwarding is enabled for this zone. The value of this field contains the set of destinations to forward to. Corresponds to the JSON property forwardingConfig



376
377
378
# File 'generated/google/apis/dns_v1/classes.rb', line 376

def forwarding_config
  @forwarding_config
end

#idFixnum

Unique identifier for the resource; defined by the server (output only) Corresponds to the JSON property id

Returns:

  • (Fixnum)


381
382
383
# File 'generated/google/apis/dns_v1/classes.rb', line 381

def id
  @id
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


386
387
388
# File 'generated/google/apis/dns_v1/classes.rb', line 386

def kind
  @kind
end

#labelsHash<String,String>

User labels. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


391
392
393
# File 'generated/google/apis/dns_v1/classes.rb', line 391

def labels
  @labels
end

#nameString

User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes. Corresponds to the JSON property name

Returns:

  • (String)


398
399
400
# File 'generated/google/apis/dns_v1/classes.rb', line 398

def name
  @name
end

#name_server_setString

Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset. Corresponds to the JSON property nameServerSet

Returns:

  • (String)


405
406
407
# File 'generated/google/apis/dns_v1/classes.rb', line 405

def name_server_set
  @name_server_set
end

#name_serversArray<String>

Delegate your managed_zone to these virtual name servers; defined by the server (output only) Corresponds to the JSON property nameServers

Returns:

  • (Array<String>)


411
412
413
# File 'generated/google/apis/dns_v1/classes.rb', line 411

def name_servers
  @name_servers
end

#peering_configGoogle::Apis::DnsV1::ManagedZonePeeringConfig

The presence of this field indicates that DNS Peering is enabled for this zone. The value of this field contains the network to peer with. Corresponds to the JSON property peeringConfig



417
418
419
# File 'generated/google/apis/dns_v1/classes.rb', line 417

def peering_config
  @peering_config
end

#private_visibility_configGoogle::Apis::DnsV1::ManagedZonePrivateVisibilityConfig

For privately visible zones, the set of Virtual Private Cloud resources that the zone is visible from. Corresponds to the JSON property privateVisibilityConfig



423
424
425
# File 'generated/google/apis/dns_v1/classes.rb', line 423

def private_visibility_config
  @private_visibility_config
end

#reverse_lookup_configGoogle::Apis::DnsV1::ManagedZoneReverseLookupConfig

The presence of this field indicates that this is a managed reverse lookup zone and Cloud DNS will resolve reverse lookup queries using automatically configured records for VPC resources. This only applies to networks listed under private_visibility_config. Corresponds to the JSON property reverseLookupConfig



431
432
433
# File 'generated/google/apis/dns_v1/classes.rb', line 431

def reverse_lookup_config
  @reverse_lookup_config
end

#service_directory_configGoogle::Apis::DnsV1::ManagedZoneServiceDirectoryConfig

Contains information about Service Directory-backed zones. Corresponds to the JSON property serviceDirectoryConfig



436
437
438
# File 'generated/google/apis/dns_v1/classes.rb', line 436

def service_directory_config
  @service_directory_config
end

#visibilityString

The zone's visibility: public zones are exposed to the Internet, while private zones are visible only to Virtual Private Cloud resources. Corresponds to the JSON property visibility

Returns:

  • (String)


442
443
444
# File 'generated/google/apis/dns_v1/classes.rb', line 442

def visibility
  @visibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
# File 'generated/google/apis/dns_v1/classes.rb', line 449

def update!(**args)
  @creation_time = args[:creation_time] if args.key?(:creation_time)
  @description = args[:description] if args.key?(:description)
  @dns_name = args[:dns_name] if args.key?(:dns_name)
  @dnssec_config = args[:dnssec_config] if args.key?(:dnssec_config)
  @forwarding_config = args[:forwarding_config] if args.key?(:forwarding_config)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @name_server_set = args[:name_server_set] if args.key?(:name_server_set)
  @name_servers = args[:name_servers] if args.key?(:name_servers)
  @peering_config = args[:peering_config] if args.key?(:peering_config)
  @private_visibility_config = args[:private_visibility_config] if args.key?(:private_visibility_config)
  @reverse_lookup_config = args[:reverse_lookup_config] if args.key?(:reverse_lookup_config)
  @service_directory_config = args[:service_directory_config] if args.key?(:service_directory_config)
  @visibility = args[:visibility] if args.key?(:visibility)
end