Class: Google::Apis::ComputeV1::UsableSubnetwork
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::UsableSubnetwork
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/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::ComputeV1::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.
48556 48557 48558 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48556 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
48487 48488 48489 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48487 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
48493 48494 48495 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48493 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
48498 48499 48500 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48498 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
48505 48506 48507 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48505 def ipv6_access_type @ipv6_access_type end |
#network ⇒ String
Network URL.
Corresponds to the JSON property network
48510 48511 48512 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48510 def network @network end |
#purpose ⇒ String
The purpose of the resource. This field can be either PRIVATE,
GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PEER_MIGRATION or
PRIVATE_SERVICE_CONNECT. 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. A subnet with purpose set to PEER_MIGRATION is
used for subnet migration from one peered VPC to another. 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
48526 48527 48528 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48526 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
48536 48537 48538 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48536 def role @role end |
#secondary_ip_ranges ⇒ Array<Google::Apis::ComputeV1::UsableSubnetworkSecondaryRange>
Secondary IP ranges.
Corresponds to the JSON property secondaryIpRanges
48541 48542 48543 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48541 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
48549 48550 48551 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48549 def stack_type @stack_type end |
#subnetwork ⇒ String
Subnetwork URL.
Corresponds to the JSON property subnetwork
48554 48555 48556 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48554 def subnetwork @subnetwork end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
48561 48562 48563 48564 48565 48566 48567 48568 48569 48570 48571 48572 |
# File 'lib/google/apis/compute_v1/classes.rb', line 48561 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 |