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

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dns_v1/classes.rb,
lib/google/apis/dns_v1/representations.rb,
lib/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.



450
451
452
# File 'lib/google/apis/dns_v1/classes.rb', line 450

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

Instance Attribute Details

#cloud_logging_configGoogle::Apis::DnsV1::ManagedZoneCloudLoggingConfig

Cloud Logging configurations for publicly visible zones. Corresponds to the JSON property cloudLoggingConfig



352
353
354
# File 'lib/google/apis/dns_v1/classes.rb', line 352

def cloud_logging_config
  @cloud_logging_config
end

#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)


358
359
360
# File 'lib/google/apis/dns_v1/classes.rb', line 358

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)


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

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)


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

def dns_name
  @dns_name
end

#dnssec_configGoogle::Apis::DnsV1::ManagedZoneDnsSecConfig

DNSSEC configuration. Corresponds to the JSON property dnssecConfig



374
375
376
# File 'lib/google/apis/dns_v1/classes.rb', line 374

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



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

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)


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

def id
  @id
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


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

def kind
  @kind
end

#labelsHash<String,String>

User labels. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


396
397
398
# File 'lib/google/apis/dns_v1/classes.rb', line 396

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)


403
404
405
# File 'lib/google/apis/dns_v1/classes.rb', line 403

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 leave this field unset. If you need to use this field, contact your account team. Corresponds to the JSON property nameServerSet

Returns:

  • (String)


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

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>)


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

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



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

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



429
430
431
# File 'lib/google/apis/dns_v1/classes.rb', line 429

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 resolves 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



437
438
439
# File 'lib/google/apis/dns_v1/classes.rb', line 437

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



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

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)


448
449
450
# File 'lib/google/apis/dns_v1/classes.rb', line 448

def visibility
  @visibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
# File 'lib/google/apis/dns_v1/classes.rb', line 455

def update!(**args)
  @cloud_logging_config = args[:cloud_logging_config] if args.key?(:cloud_logging_config)
  @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