Class: Google::Apis::ComputeBeta::UsableSubnetwork
- Inherits:
 - 
      Object
      
        
- Object
 - Google::Apis::ComputeBeta::UsableSubnetwork
 
 
- Includes:
 - Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
 
- Defined in:
 - lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb 
Overview
Subnetwork which the current user has compute.subnetworks.use permission on.
Instance Attribute Summary collapse
- 
  
    
      #external_ipv6_prefix  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
[Output Only] The external IPv6 address range that is assigned to this subnetwork.
 - 
  
    
      #internal_ipv6_prefix  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
[Output Only] The internal IPv6 address range that is assigned to this subnetwork.
 - 
  
    
      #ip_cidr_range  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The range of internal addresses that are owned by this subnetwork.
 - 
  
    
      #ipv6_access_type  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The access type of IPv6 address this subnet holds.
 - 
  
    
      #network  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
Network URL.
 - 
  
    
      #purpose  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The purpose of the resource.
 - 
  
    
      #role  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The role of subnetwork.
 - 
  
    
      #secondary_ip_ranges  ⇒ Array<Google::Apis::ComputeBeta::UsableSubnetworkSecondaryRange> 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
Secondary IP ranges.
 - 
  
    
      #stack_type  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The stack type for the subnet.
 - 
  
    
      #subnetwork  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
Subnetwork URL.
 
Instance Method Summary collapse
- 
  
    
      #initialize(**args)  ⇒ UsableSubnetwork 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    
A new instance of UsableSubnetwork.
 - 
  
    
      #update!(**args)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Update properties of this object.
 
Constructor Details
#initialize(**args) ⇒ UsableSubnetwork
Returns a new instance of UsableSubnetwork.
      50915 50916 50917  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50915 def initialize(**args) update!(**args) end  | 
  
Instance Attribute Details
#external_ipv6_prefix ⇒ String
[Output Only] The external IPv6 address range that is assigned to this
subnetwork.
Corresponds to the JSON property externalIpv6Prefix
      50848 50849 50850  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50848 def external_ipv6_prefix @external_ipv6_prefix end  | 
  
#internal_ipv6_prefix ⇒ String
[Output Only] The internal IPv6 address range that is assigned to this
subnetwork.
Corresponds to the JSON property internalIpv6Prefix
      50854 50855 50856  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50854 def internal_ipv6_prefix @internal_ipv6_prefix end  | 
  
#ip_cidr_range ⇒ String
The range of internal addresses that are owned by this subnetwork.
Corresponds to the JSON property ipCidrRange
      50859 50860 50861  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50859 def ip_cidr_range @ip_cidr_range end  | 
  
#ipv6_access_type ⇒ String
The access type of IPv6 address this subnet holds. It's immutable and can only
be specified during creation or the first time the subnet is updated into
IPV4_IPV6 dual stack.
Corresponds to the JSON property ipv6AccessType
      50866 50867 50868  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50866 def ipv6_access_type @ipv6_access_type end  | 
  
#network ⇒ String
Network URL.
Corresponds to the JSON property network
      50871 50872 50873  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50871 def network @network end  | 
  
#purpose ⇒ String
The purpose of the resource. This field can be either PRIVATE,
GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
PRIVATE is the default purpose for user-created subnets or subnets that are
automatically created in auto mode networks. Subnets with purpose set to
GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks
that are reserved for Envoy-based load balancers. A subnet with purpose set to
PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
Connect. If unspecified, the subnet purpose defaults to PRIVATE. The
enableFlowLogs field isn't supported if the subnet purpose field is set to
GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.
Corresponds to the JSON property purpose
      50885 50886 50887  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50885 def purpose @purpose end  | 
  
#role ⇒ String
The role of subnetwork. Currently, this field is only used when purpose is set
to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to
ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for
Envoy-based load balancers in a region. A BACKUP subnetwork is one that is
ready to be promoted to ACTIVE or is currently draining. This field can be
updated with a patch request.
Corresponds to the JSON property role
      50895 50896 50897  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50895 def role @role end  | 
  
#secondary_ip_ranges ⇒ Array<Google::Apis::ComputeBeta::UsableSubnetworkSecondaryRange>
Secondary IP ranges.
Corresponds to the JSON property secondaryIpRanges
      50900 50901 50902  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50900 def secondary_ip_ranges @secondary_ip_ranges end  | 
  
#stack_type ⇒ String
The stack type for the subnet. If set to IPV4_ONLY, new VMs in the subnet are
assigned IPv4 addresses only. If set to IPV4_IPV6, new VMs in the subnet can
be assigned both IPv4 and IPv6 addresses. If not specified, IPV4_ONLY is used.
This field can be both set at resource creation time and updated using patch.
Corresponds to the JSON property stackType
      50908 50909 50910  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50908 def stack_type @stack_type end  | 
  
#subnetwork ⇒ String
Subnetwork URL.
Corresponds to the JSON property subnetwork
      50913 50914 50915  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50913 def subnetwork @subnetwork end  | 
  
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
      50920 50921 50922 50923 50924 50925 50926 50927 50928 50929 50930 50931  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 50920 def update!(**args) @external_ipv6_prefix = args[:external_ipv6_prefix] if args.key?(:external_ipv6_prefix) @internal_ipv6_prefix = args[:internal_ipv6_prefix] if args.key?(:internal_ipv6_prefix) @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range) @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type) @network = args[:network] if args.key?(:network) @purpose = args[:purpose] if args.key?(:purpose) @role = args[:role] if args.key?(:role) @secondary_ip_ranges = args[:secondary_ip_ranges] if args.key?(:secondary_ip_ranges) @stack_type = args[:stack_type] if args.key?(:stack_type) @subnetwork = args[:subnetwork] if args.key?(:subnetwork) end  |