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.



884
885
886
# File 'lib/google/apis/dns_v1/classes.rb', line 884

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



786
787
788
# File 'lib/google/apis/dns_v1/classes.rb', line 786

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)


792
793
794
# File 'lib/google/apis/dns_v1/classes.rb', line 792

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)


798
799
800
# File 'lib/google/apis/dns_v1/classes.rb', line 798

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)


803
804
805
# File 'lib/google/apis/dns_v1/classes.rb', line 803

def dns_name
  @dns_name
end

#dnssec_configGoogle::Apis::DnsV1::ManagedZoneDnsSecConfig

DNSSEC configuration. Corresponds to the JSON property dnssecConfig



808
809
810
# File 'lib/google/apis/dns_v1/classes.rb', line 808

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



815
816
817
# File 'lib/google/apis/dns_v1/classes.rb', line 815

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)


820
821
822
# File 'lib/google/apis/dns_v1/classes.rb', line 820

def id
  @id
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


825
826
827
# File 'lib/google/apis/dns_v1/classes.rb', line 825

def kind
  @kind
end

#labelsHash<String,String>

User labels. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


830
831
832
# File 'lib/google/apis/dns_v1/classes.rb', line 830

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)


837
838
839
# File 'lib/google/apis/dns_v1/classes.rb', line 837

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)


845
846
847
# File 'lib/google/apis/dns_v1/classes.rb', line 845

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


851
852
853
# File 'lib/google/apis/dns_v1/classes.rb', line 851

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



857
858
859
# File 'lib/google/apis/dns_v1/classes.rb', line 857

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



863
864
865
# File 'lib/google/apis/dns_v1/classes.rb', line 863

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



871
872
873
# File 'lib/google/apis/dns_v1/classes.rb', line 871

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



876
877
878
# File 'lib/google/apis/dns_v1/classes.rb', line 876

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)


882
883
884
# File 'lib/google/apis/dns_v1/classes.rb', line 882

def visibility
  @visibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
# File 'lib/google/apis/dns_v1/classes.rb', line 889

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