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.



908
909
910
# File 'lib/google/apis/dns_v1/classes.rb', line 908

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



810
811
812
# File 'lib/google/apis/dns_v1/classes.rb', line 810

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)


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

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)


822
823
824
# File 'lib/google/apis/dns_v1/classes.rb', line 822

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)


827
828
829
# File 'lib/google/apis/dns_v1/classes.rb', line 827

def dns_name
  @dns_name
end

#dnssec_configGoogle::Apis::DnsV1::ManagedZoneDnsSecConfig

DNSSEC configuration. Corresponds to the JSON property dnssecConfig



832
833
834
# File 'lib/google/apis/dns_v1/classes.rb', line 832

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



839
840
841
# File 'lib/google/apis/dns_v1/classes.rb', line 839

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)


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

def id
  @id
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


849
850
851
# File 'lib/google/apis/dns_v1/classes.rb', line 849

def kind
  @kind
end

#labelsHash<String,String>

User labels. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


854
855
856
# File 'lib/google/apis/dns_v1/classes.rb', line 854

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)


861
862
863
# File 'lib/google/apis/dns_v1/classes.rb', line 861

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)


869
870
871
# File 'lib/google/apis/dns_v1/classes.rb', line 869

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


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

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



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

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



887
888
889
# File 'lib/google/apis/dns_v1/classes.rb', line 887

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



895
896
897
# File 'lib/google/apis/dns_v1/classes.rb', line 895

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



900
901
902
# File 'lib/google/apis/dns_v1/classes.rb', line 900

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)


906
907
908
# File 'lib/google/apis/dns_v1/classes.rb', line 906

def visibility
  @visibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
# File 'lib/google/apis/dns_v1/classes.rb', line 913

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