Class: Google::Apis::DnsV1beta2::ManagedZone

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



961
962
963
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 961

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

Instance Attribute Details

#cloud_logging_configGoogle::Apis::DnsV1beta2::ManagedZoneCloudLoggingConfig

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



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

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)


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

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)


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

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)


880
881
882
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 880

def dns_name
  @dns_name
end

#dnssec_configGoogle::Apis::DnsV1beta2::ManagedZoneDnsSecConfig

DNSSEC configuration. Corresponds to the JSON property dnssecConfig



885
886
887
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 885

def dnssec_config
  @dnssec_config
end

#forwarding_configGoogle::Apis::DnsV1beta2::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



892
893
894
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 892

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)


897
898
899
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 897

def id
  @id
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


902
903
904
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 902

def kind
  @kind
end

#labelsHash<String,String>

User labels. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


907
908
909
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 907

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)


914
915
916
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 914

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)


922
923
924
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 922

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


928
929
930
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 928

def name_servers
  @name_servers
end

#peering_configGoogle::Apis::DnsV1beta2::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



934
935
936
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 934

def peering_config
  @peering_config
end

#private_visibility_configGoogle::Apis::DnsV1beta2::ManagedZonePrivateVisibilityConfig

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



940
941
942
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 940

def private_visibility_config
  @private_visibility_config
end

#reverse_lookup_configGoogle::Apis::DnsV1beta2::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



948
949
950
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 948

def reverse_lookup_config
  @reverse_lookup_config
end

#service_directory_configGoogle::Apis::DnsV1beta2::ManagedZoneServiceDirectoryConfig

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



953
954
955
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 953

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)


959
960
961
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 959

def visibility
  @visibility
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 966

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