Class: Google::Apis::ComputeAlpha::UsableSubnetwork
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::UsableSubnetwork
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/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::ComputeAlpha::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.
52694 52695 52696 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52694 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
52625 52626 52627 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52625 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
52631 52632 52633 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52631 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
52636 52637 52638 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52636 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
52643 52644 52645 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52643 def ipv6_access_type @ipv6_access_type end |
#network ⇒ String
Network URL.
Corresponds to the JSON property network
52648 52649 52650 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52648 def network @network end |
#purpose ⇒ String
The purpose of the resource. This field can be either PRIVATE,
REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created
subnets or subnets that are automatically created in auto mode networks. A
subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork
that is reserved for regional Envoy-based load balancers. A subnet with
purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using
Private Service Connect. A subnet with purpose set to
INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by
regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is
the preferred setting for all regional Envoy load balancers. If unspecified,
the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't
supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
Corresponds to the JSON property purpose
52665 52666 52667 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52665 def purpose @purpose end |
#role ⇒ String
The role of subnetwork. Currently, this field is only used when purpose =
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
52674 52675 52676 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52674 def role @role end |
#secondary_ip_ranges ⇒ Array<Google::Apis::ComputeAlpha::UsableSubnetworkSecondaryRange>
Secondary IP ranges.
Corresponds to the JSON property secondaryIpRanges
52679 52680 52681 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52679 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
52687 52688 52689 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52687 def stack_type @stack_type end |
#subnetwork ⇒ String
Subnetwork URL.
Corresponds to the JSON property subnetwork
52692 52693 52694 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52692 def subnetwork @subnetwork end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
52699 52700 52701 52702 52703 52704 52705 52706 52707 52708 52709 52710 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 52699 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 |