google-apis-compute_v1 0.111.0 → 0.113.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -12961,12 +12961,10 @@ module Google
12961
12961
 
12962
12962
  # In response to a matching matchRule, the load balancer performs advanced
12963
12963
  # routing actions, such as URL rewrites and header transformations, before
12964
- # forwarding the request to the selected backend. If routeAction specifies any
12965
- # weightedBackendServices, service must not be set. Conversely if service is set,
12966
- # routeAction cannot contain any weightedBackendServices. Only one of
12967
- # urlRedirect, service or routeAction.weightedBackendService must be set. URL
12968
- # maps for classic Application Load Balancers only support the urlRewrite action
12969
- # within a route rule's routeAction.
12964
+ # forwarding the request to the selected backend. Only one of urlRedirect,
12965
+ # service or routeAction.weightedBackendService can be set. URL maps for classic
12966
+ # Application Load Balancers only support the urlRewrite action within a route
12967
+ # rule's routeAction.
12970
12968
  # Corresponds to the JSON property `routeAction`
12971
12969
  # @return [Google::Apis::ComputeV1::HttpRouteAction]
12972
12970
  attr_accessor :route_action
@@ -12974,10 +12972,8 @@ module Google
12974
12972
  # The full or partial URL of the backend service resource to which traffic is
12975
12973
  # directed if this rule is matched. If routeAction is also specified, advanced
12976
12974
  # routing actions, such as URL rewrites, take effect before sending the request
12977
- # to the backend. However, if service is specified, routeAction cannot contain
12978
- # any weightedBackendServices. Conversely, if routeAction specifies any
12979
- # weightedBackendServices, service must not be specified. Only one of
12980
- # urlRedirect, service or routeAction.weightedBackendService must be set.
12975
+ # to the backend. Only one of urlRedirect, service or routeAction.
12976
+ # weightedBackendService can be set.
12981
12977
  # Corresponds to the JSON property `service`
12982
12978
  # @return [String]
12983
12979
  attr_accessor :service
@@ -14879,6 +14875,11 @@ module Google
14879
14875
  # @return [String]
14880
14876
  attr_accessor :self_link
14881
14877
 
14878
+ # Standby policy for stopped and suspended instances.
14879
+ # Corresponds to the JSON property `standbyPolicy`
14880
+ # @return [Google::Apis::ComputeV1::InstanceGroupManagerStandbyPolicy]
14881
+ attr_accessor :standby_policy
14882
+
14882
14883
  # Stateful configuration for this Instanced Group Manager
14883
14884
  # Corresponds to the JSON property `statefulPolicy`
14884
14885
  # @return [Google::Apis::ComputeV1::StatefulPolicy]
@@ -14903,6 +14904,22 @@ module Google
14903
14904
  # @return [Fixnum]
14904
14905
  attr_accessor :target_size
14905
14906
 
14907
+ # The target number of stopped instances for this managed instance group. This
14908
+ # number changes when you: - Stop instance using the stopInstances method or
14909
+ # start instances using the startInstances method. - Manually change the
14910
+ # targetStoppedSize using the update method.
14911
+ # Corresponds to the JSON property `targetStoppedSize`
14912
+ # @return [Fixnum]
14913
+ attr_accessor :target_stopped_size
14914
+
14915
+ # The target number of suspended instances for this managed instance group. This
14916
+ # number changes when you: - Suspend instance using the suspendInstances method
14917
+ # or resume instances using the resumeInstances method. - Manually change the
14918
+ # targetSuspendedSize using the update method.
14919
+ # Corresponds to the JSON property `targetSuspendedSize`
14920
+ # @return [Fixnum]
14921
+ attr_accessor :target_suspended_size
14922
+
14906
14923
  # The update policy for this managed instance group.
14907
14924
  # Corresponds to the JSON property `updatePolicy`
14908
14925
  # @return [Google::Apis::ComputeV1::InstanceGroupManagerUpdatePolicy]
@@ -14952,10 +14969,13 @@ module Google
14952
14969
  @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
14953
14970
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
14954
14971
  @self_link = args[:self_link] if args.key?(:self_link)
14972
+ @standby_policy = args[:standby_policy] if args.key?(:standby_policy)
14955
14973
  @stateful_policy = args[:stateful_policy] if args.key?(:stateful_policy)
14956
14974
  @status = args[:status] if args.key?(:status)
14957
14975
  @target_pools = args[:target_pools] if args.key?(:target_pools)
14958
14976
  @target_size = args[:target_size] if args.key?(:target_size)
14977
+ @target_stopped_size = args[:target_stopped_size] if args.key?(:target_stopped_size)
14978
+ @target_suspended_size = args[:target_suspended_size] if args.key?(:target_suspended_size)
14959
14979
  @update_policy = args[:update_policy] if args.key?(:update_policy)
14960
14980
  @versions = args[:versions] if args.key?(:versions)
14961
14981
  @zone = args[:zone] if args.key?(:zone)
@@ -15939,6 +15959,35 @@ module Google
15939
15959
  end
15940
15960
  end
15941
15961
 
15962
+ #
15963
+ class InstanceGroupManagerStandbyPolicy
15964
+ include Google::Apis::Core::Hashable
15965
+
15966
+ # Specifies the number of seconds that the MIG should wait to suspend or stop a
15967
+ # VM after that VM was created. The initial delay gives the initialization
15968
+ # script the time to prepare your VM for a quick scale out. The value of initial
15969
+ # delay must be between 0 and 3600 seconds. The default value is 0.
15970
+ # Corresponds to the JSON property `initialDelaySec`
15971
+ # @return [Fixnum]
15972
+ attr_accessor :initial_delay_sec
15973
+
15974
+ # Defines how a MIG resumes or starts VMs from a standby pool when the group
15975
+ # scales out. The default mode is `MANUAL`.
15976
+ # Corresponds to the JSON property `mode`
15977
+ # @return [String]
15978
+ attr_accessor :mode
15979
+
15980
+ def initialize(**args)
15981
+ update!(**args)
15982
+ end
15983
+
15984
+ # Update properties of this object
15985
+ def update!(**args)
15986
+ @initial_delay_sec = args[:initial_delay_sec] if args.key?(:initial_delay_sec)
15987
+ @mode = args[:mode] if args.key?(:mode)
15988
+ end
15989
+ end
15990
+
15942
15991
  #
15943
15992
  class InstanceGroupManagerStatus
15944
15993
  include Google::Apis::Core::Hashable
@@ -16551,6 +16600,26 @@ module Google
16551
16600
  end
16552
16601
  end
16553
16602
 
16603
+ #
16604
+ class InstanceGroupManagersResumeInstancesRequest
16605
+ include Google::Apis::Core::Hashable
16606
+
16607
+ # The URLs of one or more instances to resume. This can be a full URL or a
16608
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
16609
+ # Corresponds to the JSON property `instances`
16610
+ # @return [Array<String>]
16611
+ attr_accessor :instances
16612
+
16613
+ def initialize(**args)
16614
+ update!(**args)
16615
+ end
16616
+
16617
+ # Update properties of this object
16618
+ def update!(**args)
16619
+ @instances = args[:instances] if args.key?(:instances)
16620
+ end
16621
+ end
16622
+
16554
16623
  #
16555
16624
  class InstanceGroupManagersScopedList
16556
16625
  include Google::Apis::Core::Hashable
@@ -16699,6 +16768,82 @@ module Google
16699
16768
  end
16700
16769
  end
16701
16770
 
16771
+ #
16772
+ class InstanceGroupManagersStartInstancesRequest
16773
+ include Google::Apis::Core::Hashable
16774
+
16775
+ # The URLs of one or more instances to start. This can be a full URL or a
16776
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
16777
+ # Corresponds to the JSON property `instances`
16778
+ # @return [Array<String>]
16779
+ attr_accessor :instances
16780
+
16781
+ def initialize(**args)
16782
+ update!(**args)
16783
+ end
16784
+
16785
+ # Update properties of this object
16786
+ def update!(**args)
16787
+ @instances = args[:instances] if args.key?(:instances)
16788
+ end
16789
+ end
16790
+
16791
+ #
16792
+ class InstanceGroupManagersStopInstancesRequest
16793
+ include Google::Apis::Core::Hashable
16794
+
16795
+ # If this flag is set to true, the Instance Group Manager will proceed to stop
16796
+ # the instances, skipping initialization on them.
16797
+ # Corresponds to the JSON property `forceStop`
16798
+ # @return [Boolean]
16799
+ attr_accessor :force_stop
16800
+ alias_method :force_stop?, :force_stop
16801
+
16802
+ # The URLs of one or more instances to stop. This can be a full URL or a partial
16803
+ # URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
16804
+ # Corresponds to the JSON property `instances`
16805
+ # @return [Array<String>]
16806
+ attr_accessor :instances
16807
+
16808
+ def initialize(**args)
16809
+ update!(**args)
16810
+ end
16811
+
16812
+ # Update properties of this object
16813
+ def update!(**args)
16814
+ @force_stop = args[:force_stop] if args.key?(:force_stop)
16815
+ @instances = args[:instances] if args.key?(:instances)
16816
+ end
16817
+ end
16818
+
16819
+ #
16820
+ class InstanceGroupManagersSuspendInstancesRequest
16821
+ include Google::Apis::Core::Hashable
16822
+
16823
+ # If this flag is set to true, the Instance Group Manager will proceed to
16824
+ # suspend the instances, skipping initialization on them.
16825
+ # Corresponds to the JSON property `forceSuspend`
16826
+ # @return [Boolean]
16827
+ attr_accessor :force_suspend
16828
+ alias_method :force_suspend?, :force_suspend
16829
+
16830
+ # The URLs of one or more instances to suspend. This can be a full URL or a
16831
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
16832
+ # Corresponds to the JSON property `instances`
16833
+ # @return [Array<String>]
16834
+ attr_accessor :instances
16835
+
16836
+ def initialize(**args)
16837
+ update!(**args)
16838
+ end
16839
+
16840
+ # Update properties of this object
16841
+ def update!(**args)
16842
+ @force_suspend = args[:force_suspend] if args.key?(:force_suspend)
16843
+ @instances = args[:instances] if args.key?(:instances)
16844
+ end
16845
+ end
16846
+
16702
16847
  # InstanceGroupManagers.updatePerInstanceConfigs
16703
16848
  class InstanceGroupManagersUpdatePerInstanceConfigsReq
16704
16849
  include Google::Apis::Core::Hashable
@@ -20601,7 +20746,7 @@ module Google
20601
20746
  attr_accessor :availability_zone
20602
20747
 
20603
20748
  # [Output only] List of features available at this InterconnectLocation, which
20604
- # can take one of the following values: - MACSEC
20749
+ # can take one of the following values: - IF_MACSEC
20605
20750
  # Corresponds to the JSON property `availableFeatures`
20606
20751
  # @return [Array<String>]
20607
20752
  attr_accessor :available_features
@@ -21541,7 +21686,7 @@ module Google
21541
21686
  # @return [String]
21542
21687
  attr_accessor :name
21543
21688
 
21544
- #
21689
+ # [Input Only] Deprecated.
21545
21690
  # Corresponds to the JSON property `resourceRequirements`
21546
21691
  # @return [Google::Apis::ComputeV1::LicenseResourceRequirements]
21547
21692
  attr_accessor :resource_requirements
@@ -21711,14 +21856,14 @@ module Google
21711
21856
  class LicenseResourceRequirements
21712
21857
  include Google::Apis::Core::Hashable
21713
21858
 
21714
- # Minimum number of guest cpus required to use the Instance. Enforced at
21715
- # Instance creation and Instance start.
21859
+ # [Input Only] Deprecated. This field no longer reflects the minimum number of
21860
+ # guest cpus required to use the Instance.
21716
21861
  # Corresponds to the JSON property `minGuestCpuCount`
21717
21862
  # @return [Fixnum]
21718
21863
  attr_accessor :min_guest_cpu_count
21719
21864
 
21720
- # Minimum memory required to use the Instance. Enforced at Instance creation and
21721
- # Instance start.
21865
+ # [Input Only] Deprecated. This field no longer reflects the minimum memory
21866
+ # required to use the Instance.
21722
21867
  # Corresponds to the JSON property `minMemoryMb`
21723
21868
  # @return [Fixnum]
21724
21869
  attr_accessor :min_memory_mb
@@ -23394,6 +23539,15 @@ module Google
23394
23539
  # @return [String]
23395
23540
  attr_accessor :network_firewall_policy_enforcement_order
23396
23541
 
23542
+ # A full or partial URL of the network profile to apply to this network. This
23543
+ # field can be set only at resource creation time. For example, the following
23544
+ # are valid URLs: - https://www.googleapis.com/compute/`api_version`/projects/`
23545
+ # project_id`/global/networkProfiles/`network_profile_name` - projects/`
23546
+ # project_id`/global/networkProfiles/`network_profile_name`
23547
+ # Corresponds to the JSON property `networkProfile`
23548
+ # @return [String]
23549
+ attr_accessor :network_profile
23550
+
23397
23551
  # [Output Only] A list of network peerings for the resource.
23398
23552
  # Corresponds to the JSON property `peerings`
23399
23553
  # @return [Array<Google::Apis::ComputeV1::NetworkPeering>]
@@ -23441,6 +23595,7 @@ module Google
23441
23595
  @mtu = args[:mtu] if args.key?(:mtu)
23442
23596
  @name = args[:name] if args.key?(:name)
23443
23597
  @network_firewall_policy_enforcement_order = args[:network_firewall_policy_enforcement_order] if args.key?(:network_firewall_policy_enforcement_order)
23598
+ @network_profile = args[:network_profile] if args.key?(:network_profile)
23444
23599
  @peerings = args[:peerings] if args.key?(:peerings)
23445
23600
  @routing_config = args[:routing_config] if args.key?(:routing_config)
23446
23601
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -25598,6 +25753,385 @@ module Google
25598
25753
  end
25599
25754
  end
25600
25755
 
25756
+ # NetworkProfile represents a Google managed network profile resource.
25757
+ class NetworkProfile
25758
+ include Google::Apis::Core::Hashable
25759
+
25760
+ # [Output Only] Creation timestamp in RFC3339 text format.
25761
+ # Corresponds to the JSON property `creationTimestamp`
25762
+ # @return [String]
25763
+ attr_accessor :creation_timestamp
25764
+
25765
+ # [Output Only] An optional description of this resource.
25766
+ # Corresponds to the JSON property `description`
25767
+ # @return [String]
25768
+ attr_accessor :description
25769
+
25770
+ # [Output Only] Features supported by the network.
25771
+ # Corresponds to the JSON property `features`
25772
+ # @return [Google::Apis::ComputeV1::NetworkProfileNetworkFeatures]
25773
+ attr_accessor :features
25774
+
25775
+ # [Output Only] The unique identifier for the resource. This identifier is
25776
+ # defined by the server.
25777
+ # Corresponds to the JSON property `id`
25778
+ # @return [Fixnum]
25779
+ attr_accessor :id
25780
+
25781
+ # [Output Only] Type of the resource. Always compute#networkProfile for network
25782
+ # profiles.
25783
+ # Corresponds to the JSON property `kind`
25784
+ # @return [String]
25785
+ attr_accessor :kind
25786
+
25787
+ # [Output Only] Location to which the network is restricted.
25788
+ # Corresponds to the JSON property `location`
25789
+ # @return [Google::Apis::ComputeV1::NetworkProfileLocation]
25790
+ attr_accessor :location
25791
+
25792
+ # [Output Only] Name of the resource.
25793
+ # Corresponds to the JSON property `name`
25794
+ # @return [String]
25795
+ attr_accessor :name
25796
+
25797
+ # [Output Only] Server-defined URL for the resource.
25798
+ # Corresponds to the JSON property `selfLink`
25799
+ # @return [String]
25800
+ attr_accessor :self_link
25801
+
25802
+ # [Output Only] Server-defined URL for this resource with the resource id.
25803
+ # Corresponds to the JSON property `selfLinkWithId`
25804
+ # @return [String]
25805
+ attr_accessor :self_link_with_id
25806
+
25807
+ # [Output Only] Zone to which the network is restricted.
25808
+ # Corresponds to the JSON property `zone`
25809
+ # @return [String]
25810
+ attr_accessor :zone
25811
+
25812
+ def initialize(**args)
25813
+ update!(**args)
25814
+ end
25815
+
25816
+ # Update properties of this object
25817
+ def update!(**args)
25818
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
25819
+ @description = args[:description] if args.key?(:description)
25820
+ @features = args[:features] if args.key?(:features)
25821
+ @id = args[:id] if args.key?(:id)
25822
+ @kind = args[:kind] if args.key?(:kind)
25823
+ @location = args[:location] if args.key?(:location)
25824
+ @name = args[:name] if args.key?(:name)
25825
+ @self_link = args[:self_link] if args.key?(:self_link)
25826
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
25827
+ @zone = args[:zone] if args.key?(:zone)
25828
+ end
25829
+ end
25830
+
25831
+ #
25832
+ class NetworkProfileLocation
25833
+ include Google::Apis::Core::Hashable
25834
+
25835
+ #
25836
+ # Corresponds to the JSON property `name`
25837
+ # @return [String]
25838
+ attr_accessor :name
25839
+
25840
+ #
25841
+ # Corresponds to the JSON property `scope`
25842
+ # @return [String]
25843
+ attr_accessor :scope
25844
+
25845
+ def initialize(**args)
25846
+ update!(**args)
25847
+ end
25848
+
25849
+ # Update properties of this object
25850
+ def update!(**args)
25851
+ @name = args[:name] if args.key?(:name)
25852
+ @scope = args[:scope] if args.key?(:scope)
25853
+ end
25854
+ end
25855
+
25856
+ #
25857
+ class NetworkProfileNetworkFeatures
25858
+ include Google::Apis::Core::Hashable
25859
+
25860
+ # Specifies what address purposes are supported. If empty, all address purposes
25861
+ # are supported.
25862
+ # Corresponds to the JSON property `addressPurposes`
25863
+ # @return [Array<String>]
25864
+ attr_accessor :address_purposes
25865
+
25866
+ # Specifies whether alias IP ranges (and secondary address ranges) are allowed.
25867
+ # Corresponds to the JSON property `allowAliasIpRanges`
25868
+ # @return [String]
25869
+ attr_accessor :allow_alias_ip_ranges
25870
+
25871
+ # Specifies whether auto mode subnet creation is allowed.
25872
+ # Corresponds to the JSON property `allowAutoModeSubnet`
25873
+ # @return [String]
25874
+ attr_accessor :allow_auto_mode_subnet
25875
+
25876
+ # Specifies whether firewalls for Class D address ranges are supported.
25877
+ # Corresponds to the JSON property `allowClassDFirewalls`
25878
+ # @return [String]
25879
+ attr_accessor :allow_class_d_firewalls
25880
+
25881
+ # Specifies whether cloud NAT creation is allowed.
25882
+ # Corresponds to the JSON property `allowCloudNat`
25883
+ # @return [String]
25884
+ attr_accessor :allow_cloud_nat
25885
+
25886
+ # Specifies whether cloud router creation is allowed.
25887
+ # Corresponds to the JSON property `allowCloudRouter`
25888
+ # @return [String]
25889
+ attr_accessor :allow_cloud_router
25890
+
25891
+ # Specifies whether VMs are allowed to have external IP access on network
25892
+ # interfaces connected to this VPC.
25893
+ # Corresponds to the JSON property `allowExternalIpAccess`
25894
+ # @return [String]
25895
+ attr_accessor :allow_external_ip_access
25896
+
25897
+ # Specifies whether Cloud Interconnect creation is allowed.
25898
+ # Corresponds to the JSON property `allowInterconnect`
25899
+ # @return [String]
25900
+ attr_accessor :allow_interconnect
25901
+
25902
+ # Specifies whether cloud load balancing is allowed.
25903
+ # Corresponds to the JSON property `allowLoadBalancing`
25904
+ # @return [String]
25905
+ attr_accessor :allow_load_balancing
25906
+
25907
+ # Specifies whether multi-nic in the same network is allowed.
25908
+ # Corresponds to the JSON property `allowMultiNicInSameNetwork`
25909
+ # @return [String]
25910
+ attr_accessor :allow_multi_nic_in_same_network
25911
+
25912
+ # Specifies whether Packet Mirroring 1.0 is supported.
25913
+ # Corresponds to the JSON property `allowPacketMirroring`
25914
+ # @return [String]
25915
+ attr_accessor :allow_packet_mirroring
25916
+
25917
+ # Specifies whether private Google access is allowed.
25918
+ # Corresponds to the JSON property `allowPrivateGoogleAccess`
25919
+ # @return [String]
25920
+ attr_accessor :allow_private_google_access
25921
+
25922
+ # Specifies whether PSC creation is allowed.
25923
+ # Corresponds to the JSON property `allowPsc`
25924
+ # @return [String]
25925
+ attr_accessor :allow_psc
25926
+
25927
+ # Specifies whether unicast within the same network is allowed.
25928
+ # Corresponds to the JSON property `allowSameNetworkUnicast`
25929
+ # @return [String]
25930
+ attr_accessor :allow_same_network_unicast
25931
+
25932
+ # Specifies whether static route creation is allowed.
25933
+ # Corresponds to the JSON property `allowStaticRoutes`
25934
+ # @return [String]
25935
+ attr_accessor :allow_static_routes
25936
+
25937
+ # Specifies whether sub interfaces are allowed.
25938
+ # Corresponds to the JSON property `allowSubInterfaces`
25939
+ # @return [String]
25940
+ attr_accessor :allow_sub_interfaces
25941
+
25942
+ # Specifies whether VPC peering is allowed.
25943
+ # Corresponds to the JSON property `allowVpcPeering`
25944
+ # @return [String]
25945
+ attr_accessor :allow_vpc_peering
25946
+
25947
+ # Specifies whether VPN creation is allowed.
25948
+ # Corresponds to the JSON property `allowVpn`
25949
+ # @return [String]
25950
+ attr_accessor :allow_vpn
25951
+
25952
+ # If set, limits the interface types that the network supports. If empty, all
25953
+ # interface types are supported.
25954
+ # Corresponds to the JSON property `interfaceTypes`
25955
+ # @return [Array<String>]
25956
+ attr_accessor :interface_types
25957
+
25958
+ # Specifies which subnetwork purposes are supported.
25959
+ # Corresponds to the JSON property `subnetPurposes`
25960
+ # @return [Array<String>]
25961
+ attr_accessor :subnet_purposes
25962
+
25963
+ # Specifies which subnetwork stack types are supported.
25964
+ # Corresponds to the JSON property `subnetStackTypes`
25965
+ # @return [Array<String>]
25966
+ attr_accessor :subnet_stack_types
25967
+
25968
+ # Specifies which type of unicast is supported.
25969
+ # Corresponds to the JSON property `unicast`
25970
+ # @return [String]
25971
+ attr_accessor :unicast
25972
+
25973
+ def initialize(**args)
25974
+ update!(**args)
25975
+ end
25976
+
25977
+ # Update properties of this object
25978
+ def update!(**args)
25979
+ @address_purposes = args[:address_purposes] if args.key?(:address_purposes)
25980
+ @allow_alias_ip_ranges = args[:allow_alias_ip_ranges] if args.key?(:allow_alias_ip_ranges)
25981
+ @allow_auto_mode_subnet = args[:allow_auto_mode_subnet] if args.key?(:allow_auto_mode_subnet)
25982
+ @allow_class_d_firewalls = args[:allow_class_d_firewalls] if args.key?(:allow_class_d_firewalls)
25983
+ @allow_cloud_nat = args[:allow_cloud_nat] if args.key?(:allow_cloud_nat)
25984
+ @allow_cloud_router = args[:allow_cloud_router] if args.key?(:allow_cloud_router)
25985
+ @allow_external_ip_access = args[:allow_external_ip_access] if args.key?(:allow_external_ip_access)
25986
+ @allow_interconnect = args[:allow_interconnect] if args.key?(:allow_interconnect)
25987
+ @allow_load_balancing = args[:allow_load_balancing] if args.key?(:allow_load_balancing)
25988
+ @allow_multi_nic_in_same_network = args[:allow_multi_nic_in_same_network] if args.key?(:allow_multi_nic_in_same_network)
25989
+ @allow_packet_mirroring = args[:allow_packet_mirroring] if args.key?(:allow_packet_mirroring)
25990
+ @allow_private_google_access = args[:allow_private_google_access] if args.key?(:allow_private_google_access)
25991
+ @allow_psc = args[:allow_psc] if args.key?(:allow_psc)
25992
+ @allow_same_network_unicast = args[:allow_same_network_unicast] if args.key?(:allow_same_network_unicast)
25993
+ @allow_static_routes = args[:allow_static_routes] if args.key?(:allow_static_routes)
25994
+ @allow_sub_interfaces = args[:allow_sub_interfaces] if args.key?(:allow_sub_interfaces)
25995
+ @allow_vpc_peering = args[:allow_vpc_peering] if args.key?(:allow_vpc_peering)
25996
+ @allow_vpn = args[:allow_vpn] if args.key?(:allow_vpn)
25997
+ @interface_types = args[:interface_types] if args.key?(:interface_types)
25998
+ @subnet_purposes = args[:subnet_purposes] if args.key?(:subnet_purposes)
25999
+ @subnet_stack_types = args[:subnet_stack_types] if args.key?(:subnet_stack_types)
26000
+ @unicast = args[:unicast] if args.key?(:unicast)
26001
+ end
26002
+ end
26003
+
26004
+ # Contains a list of network profiles.
26005
+ class NetworkProfilesListResponse
26006
+ include Google::Apis::Core::Hashable
26007
+
26008
+ #
26009
+ # Corresponds to the JSON property `etag`
26010
+ # @return [String]
26011
+ attr_accessor :etag
26012
+
26013
+ # [Output Only] Unique identifier for the resource; defined by the server.
26014
+ # Corresponds to the JSON property `id`
26015
+ # @return [String]
26016
+ attr_accessor :id
26017
+
26018
+ # A list of NetworkProfile resources.
26019
+ # Corresponds to the JSON property `items`
26020
+ # @return [Array<Google::Apis::ComputeV1::NetworkProfile>]
26021
+ attr_accessor :items
26022
+
26023
+ # [Output Only] Type of resource. Always compute#networkProfileList for network
26024
+ # profiles.
26025
+ # Corresponds to the JSON property `kind`
26026
+ # @return [String]
26027
+ attr_accessor :kind
26028
+
26029
+ # [Output Only] This token allows you to get the next page of results for list
26030
+ # requests. If the number of results is larger than maxResults, use the
26031
+ # nextPageToken as a value for the query parameter pageToken in the next list
26032
+ # request. Subsequent list requests will have their own nextPageToken to
26033
+ # continue paging through the results.
26034
+ # Corresponds to the JSON property `nextPageToken`
26035
+ # @return [String]
26036
+ attr_accessor :next_page_token
26037
+
26038
+ # [Output Only] Server-defined URL for this resource.
26039
+ # Corresponds to the JSON property `selfLink`
26040
+ # @return [String]
26041
+ attr_accessor :self_link
26042
+
26043
+ # [Output Only] Unreachable resources. end_interface:
26044
+ # MixerListResponseWithEtagBuilder
26045
+ # Corresponds to the JSON property `unreachables`
26046
+ # @return [Array<String>]
26047
+ attr_accessor :unreachables
26048
+
26049
+ # [Output Only] Informational warning message.
26050
+ # Corresponds to the JSON property `warning`
26051
+ # @return [Google::Apis::ComputeV1::NetworkProfilesListResponse::Warning]
26052
+ attr_accessor :warning
26053
+
26054
+ def initialize(**args)
26055
+ update!(**args)
26056
+ end
26057
+
26058
+ # Update properties of this object
26059
+ def update!(**args)
26060
+ @etag = args[:etag] if args.key?(:etag)
26061
+ @id = args[:id] if args.key?(:id)
26062
+ @items = args[:items] if args.key?(:items)
26063
+ @kind = args[:kind] if args.key?(:kind)
26064
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
26065
+ @self_link = args[:self_link] if args.key?(:self_link)
26066
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
26067
+ @warning = args[:warning] if args.key?(:warning)
26068
+ end
26069
+
26070
+ # [Output Only] Informational warning message.
26071
+ class Warning
26072
+ include Google::Apis::Core::Hashable
26073
+
26074
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
26075
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
26076
+ # Corresponds to the JSON property `code`
26077
+ # @return [String]
26078
+ attr_accessor :code
26079
+
26080
+ # [Output Only] Metadata about this warning in key: value format. For example: "
26081
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
26082
+ # Corresponds to the JSON property `data`
26083
+ # @return [Array<Google::Apis::ComputeV1::NetworkProfilesListResponse::Warning::Datum>]
26084
+ attr_accessor :data
26085
+
26086
+ # [Output Only] A human-readable description of the warning code.
26087
+ # Corresponds to the JSON property `message`
26088
+ # @return [String]
26089
+ attr_accessor :message
26090
+
26091
+ def initialize(**args)
26092
+ update!(**args)
26093
+ end
26094
+
26095
+ # Update properties of this object
26096
+ def update!(**args)
26097
+ @code = args[:code] if args.key?(:code)
26098
+ @data = args[:data] if args.key?(:data)
26099
+ @message = args[:message] if args.key?(:message)
26100
+ end
26101
+
26102
+ #
26103
+ class Datum
26104
+ include Google::Apis::Core::Hashable
26105
+
26106
+ # [Output Only] A key that provides more detail on the warning being returned.
26107
+ # For example, for warnings where there are no results in a list request for a
26108
+ # particular zone, this key might be scope and the key value might be the zone
26109
+ # name. Other examples might be a key indicating a deprecated resource and a
26110
+ # suggested replacement, or a warning about invalid network settings (for
26111
+ # example, if an instance attempts to perform IP forwarding but is not enabled
26112
+ # for IP forwarding).
26113
+ # Corresponds to the JSON property `key`
26114
+ # @return [String]
26115
+ attr_accessor :key
26116
+
26117
+ # [Output Only] A warning data value corresponding to the key.
26118
+ # Corresponds to the JSON property `value`
26119
+ # @return [String]
26120
+ attr_accessor :value
26121
+
26122
+ def initialize(**args)
26123
+ update!(**args)
26124
+ end
26125
+
26126
+ # Update properties of this object
26127
+ def update!(**args)
26128
+ @key = args[:key] if args.key?(:key)
26129
+ @value = args[:value] if args.key?(:value)
26130
+ end
26131
+ end
26132
+ end
26133
+ end
26134
+
25601
26135
  # A routing configuration attached to a network resource. The message includes
25602
26136
  # the list of routers associated with the network, and a flag indicating the
25603
26137
  # type of routing behavior to enforce network-wide.
@@ -29341,11 +29875,8 @@ module Google
29341
29875
  # defaultRouteAction takes effect when none of the pathRules or routeRules match.
29342
29876
  # The load balancer performs advanced routing actions, such as URL rewrites and
29343
29877
  # header transformations, before forwarding the request to the selected backend.
29344
- # If defaultRouteAction specifies any weightedBackendServices, defaultService
29345
- # must not be set. Conversely if defaultService is set, defaultRouteAction
29346
- # cannot contain any weightedBackendServices. If defaultRouteAction is specified,
29347
- # don't set defaultUrlRedirect. If defaultRouteAction.weightedBackendServices
29348
- # is specified, don't set defaultService. URL maps for classic Application Load
29878
+ # Only one of defaultUrlRedirect, defaultService or defaultRouteAction.
29879
+ # weightedBackendService can be set. URL maps for classic Application Load
29349
29880
  # Balancers only support the urlRewrite action within a path matcher's
29350
29881
  # defaultRouteAction.
29351
29882
  # Corresponds to the JSON property `defaultRouteAction`
@@ -29359,14 +29890,11 @@ module Google
29359
29890
  # backendService - compute/v1/projects/project/global/backendServices/
29360
29891
  # backendService - global/backendServices/backendService If defaultRouteAction
29361
29892
  # is also specified, advanced routing actions, such as URL rewrites, take effect
29362
- # before sending the request to the backend. However, if defaultService is
29363
- # specified, defaultRouteAction cannot contain any weightedBackendServices.
29364
- # Conversely, if defaultRouteAction specifies any weightedBackendServices,
29365
- # defaultService must not be specified. If defaultService is specified, then set
29366
- # either defaultUrlRedirect or defaultRouteAction.weightedBackendService. Don't
29367
- # set both. Authorization requires one or more of the following Google IAM
29368
- # permissions on the specified resource default_service: - compute.
29369
- # backendBuckets.use - compute.backendServices.use
29893
+ # before sending the request to the backend. Only one of defaultUrlRedirect,
29894
+ # defaultService or defaultRouteAction.weightedBackendService can be set.
29895
+ # Authorization requires one or more of the following Google IAM permissions on
29896
+ # the specified resource default_service: - compute.backendBuckets.use - compute.
29897
+ # backendServices.use
29370
29898
  # Corresponds to the JSON property `defaultService`
29371
29899
  # @return [String]
29372
29900
  attr_accessor :default_service
@@ -29450,11 +29978,10 @@ module Google
29450
29978
 
29451
29979
  # In response to a matching path, the load balancer performs advanced routing
29452
29980
  # actions, such as URL rewrites and header transformations, before forwarding
29453
- # the request to the selected backend. If routeAction specifies any
29454
- # weightedBackendServices, service must not be set. Conversely if service is set,
29455
- # routeAction cannot contain any weightedBackendServices. Only one of
29456
- # routeAction or urlRedirect must be set. URL maps for classic Application Load
29457
- # Balancers only support the urlRewrite action within a path rule's routeAction.
29981
+ # the request to the selected backend. Only one of urlRedirect, service or
29982
+ # routeAction.weightedBackendService can be set. URL maps for classic
29983
+ # Application Load Balancers only support the urlRewrite action within a path
29984
+ # rule's routeAction.
29458
29985
  # Corresponds to the JSON property `routeAction`
29459
29986
  # @return [Google::Apis::ComputeV1::HttpRouteAction]
29460
29987
  attr_accessor :route_action
@@ -29462,10 +29989,8 @@ module Google
29462
29989
  # The full or partial URL of the backend service resource to which traffic is
29463
29990
  # directed if this rule is matched. If routeAction is also specified, advanced
29464
29991
  # routing actions, such as URL rewrites, take effect before sending the request
29465
- # to the backend. However, if service is specified, routeAction cannot contain
29466
- # any weightedBackendServices. Conversely, if routeAction specifies any
29467
- # weightedBackendServices, service must not be specified. Only one of
29468
- # urlRedirect, service or routeAction.weightedBackendService must be set.
29992
+ # to the backend. Only one of urlRedirect, service or routeAction.
29993
+ # weightedBackendService can be set.
29469
29994
  # Corresponds to the JSON property `service`
29470
29995
  # @return [String]
29471
29996
  attr_accessor :service
@@ -29506,7 +30031,7 @@ module Google
29506
30031
  # Serves as a merge key during UpdatePerInstanceConfigs operations, that is, if
29507
30032
  # a per-instance configuration with the same name exists then it will be updated,
29508
30033
  # otherwise a new one will be created for the VM instance with the same name.
29509
- # An attempt to create a per-instance configconfiguration for a VM instance that
30034
+ # An attempt to create a per-instance configuration for a VM instance that
29510
30035
  # either doesn't exist or is not part of the group will result in an error.
29511
30036
  # Corresponds to the JSON property `name`
29512
30037
  # @return [String]
@@ -29821,7 +30346,7 @@ module Google
29821
30346
  # @return [String]
29822
30347
  attr_accessor :description
29823
30348
 
29824
- # Restricted features enabled for use on this project.
30349
+ # An optional list of restricted features enabled for use on this project.
29825
30350
  # Corresponds to the JSON property `enabledFeatures`
29826
30351
  # @return [Array<String>]
29827
30352
  attr_accessor :enabled_features
@@ -32094,6 +32619,26 @@ module Google
32094
32619
  end
32095
32620
  end
32096
32621
 
32622
+ #
32623
+ class RegionInstanceGroupManagersResumeInstancesRequest
32624
+ include Google::Apis::Core::Hashable
32625
+
32626
+ # The URLs of one or more instances to resume. This can be a full URL or a
32627
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
32628
+ # Corresponds to the JSON property `instances`
32629
+ # @return [Array<String>]
32630
+ attr_accessor :instances
32631
+
32632
+ def initialize(**args)
32633
+ update!(**args)
32634
+ end
32635
+
32636
+ # Update properties of this object
32637
+ def update!(**args)
32638
+ @instances = args[:instances] if args.key?(:instances)
32639
+ end
32640
+ end
32641
+
32097
32642
  #
32098
32643
  class RegionInstanceGroupManagersSetTargetPoolsRequest
32099
32644
  include Google::Apis::Core::Hashable
@@ -32144,6 +32689,82 @@ module Google
32144
32689
  end
32145
32690
  end
32146
32691
 
32692
+ #
32693
+ class RegionInstanceGroupManagersStartInstancesRequest
32694
+ include Google::Apis::Core::Hashable
32695
+
32696
+ # The URLs of one or more instances to start. This can be a full URL or a
32697
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
32698
+ # Corresponds to the JSON property `instances`
32699
+ # @return [Array<String>]
32700
+ attr_accessor :instances
32701
+
32702
+ def initialize(**args)
32703
+ update!(**args)
32704
+ end
32705
+
32706
+ # Update properties of this object
32707
+ def update!(**args)
32708
+ @instances = args[:instances] if args.key?(:instances)
32709
+ end
32710
+ end
32711
+
32712
+ #
32713
+ class RegionInstanceGroupManagersStopInstancesRequest
32714
+ include Google::Apis::Core::Hashable
32715
+
32716
+ # If this flag is set to true, the Instance Group Manager will proceed to stop
32717
+ # the instances, skipping initialization on them.
32718
+ # Corresponds to the JSON property `forceStop`
32719
+ # @return [Boolean]
32720
+ attr_accessor :force_stop
32721
+ alias_method :force_stop?, :force_stop
32722
+
32723
+ # The URLs of one or more instances to stop. This can be a full URL or a partial
32724
+ # URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
32725
+ # Corresponds to the JSON property `instances`
32726
+ # @return [Array<String>]
32727
+ attr_accessor :instances
32728
+
32729
+ def initialize(**args)
32730
+ update!(**args)
32731
+ end
32732
+
32733
+ # Update properties of this object
32734
+ def update!(**args)
32735
+ @force_stop = args[:force_stop] if args.key?(:force_stop)
32736
+ @instances = args[:instances] if args.key?(:instances)
32737
+ end
32738
+ end
32739
+
32740
+ #
32741
+ class RegionInstanceGroupManagersSuspendInstancesRequest
32742
+ include Google::Apis::Core::Hashable
32743
+
32744
+ # If this flag is set to true, the Instance Group Manager will proceed to
32745
+ # suspend the instances, skipping initialization on them.
32746
+ # Corresponds to the JSON property `forceSuspend`
32747
+ # @return [Boolean]
32748
+ attr_accessor :force_suspend
32749
+ alias_method :force_suspend?, :force_suspend
32750
+
32751
+ # The URLs of one or more instances to suspend. This can be a full URL or a
32752
+ # partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].
32753
+ # Corresponds to the JSON property `instances`
32754
+ # @return [Array<String>]
32755
+ attr_accessor :instances
32756
+
32757
+ def initialize(**args)
32758
+ update!(**args)
32759
+ end
32760
+
32761
+ # Update properties of this object
32762
+ def update!(**args)
32763
+ @force_suspend = args[:force_suspend] if args.key?(:force_suspend)
32764
+ @instances = args[:instances] if args.key?(:instances)
32765
+ end
32766
+ end
32767
+
32147
32768
  #
32148
32769
  class RegionInstanceGroupsListInstances
32149
32770
  include Google::Apis::Core::Hashable
@@ -34168,7 +34789,9 @@ module Google
34168
34789
  class ResourceStatus
34169
34790
  include Google::Apis::Core::Hashable
34170
34791
 
34171
- # [Output Only] An opaque ID of the host on which the VM is running.
34792
+ # [Output Only] The precise location of your instance within the zone's data
34793
+ # center, including the block, sub-block, and host. The field is formatted as
34794
+ # follows: blockId/subBlockId/hostId.
34172
34795
  # Corresponds to the JSON property `physicalHost`
34173
34796
  # @return [String]
34174
34797
  attr_accessor :physical_host
@@ -38089,7 +38712,9 @@ module Google
38089
38712
  # originating client, which is resolved based on "userIpRequestHeaders"
38090
38713
  # configured with the security policy. If there is no "userIpRequestHeaders"
38091
38714
  # configuration or an IP address cannot be resolved from it, the key type
38092
- # defaults to IP.
38715
+ # defaults to IP. - TLS_JA4_FINGERPRINT: JA4 TLS/SSL fingerprint if the client
38716
+ # connects using HTTPS, HTTP/2 or HTTP/3. If not available, the key type
38717
+ # defaults to ALL.
38093
38718
  # Corresponds to the JSON property `enforceOnKey`
38094
38719
  # @return [String]
38095
38720
  attr_accessor :enforce_on_key
@@ -38184,7 +38809,9 @@ module Google
38184
38809
  # originating client, which is resolved based on "userIpRequestHeaders"
38185
38810
  # configured with the security policy. If there is no "userIpRequestHeaders"
38186
38811
  # configuration or an IP address cannot be resolved from it, the key type
38187
- # defaults to IP.
38812
+ # defaults to IP. - TLS_JA4_FINGERPRINT: JA4 TLS/SSL fingerprint if the client
38813
+ # connects using HTTPS, HTTP/2 or HTTP/3. If not available, the key type
38814
+ # defaults to ALL.
38188
38815
  # Corresponds to the JSON property `enforceOnKeyType`
38189
38816
  # @return [String]
38190
38817
  attr_accessor :enforce_on_key_type
@@ -42518,15 +43145,17 @@ module Google
42518
43145
  attr_accessor :private_ipv6_google_access
42519
43146
 
42520
43147
  # The purpose of the resource. This field can be either PRIVATE,
42521
- # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, or PRIVATE_SERVICE_CONNECT.
42522
- # PRIVATE is the default purpose for user-created subnets or subnets that are
42523
- # automatically created in auto mode networks. Subnets with purpose set to
42524
- # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks
42525
- # that are reserved for Envoy-based load balancers. A subnet with purpose set to
42526
- # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
42527
- # Connect. If unspecified, the subnet purpose defaults to PRIVATE. The
42528
- # enableFlowLogs field isn't supported if the subnet purpose field is set to
42529
- # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.
43148
+ # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PEER_MIGRATION or
43149
+ # PRIVATE_SERVICE_CONNECT. PRIVATE is the default purpose for user-created
43150
+ # subnets or subnets that are automatically created in auto mode networks.
43151
+ # Subnets with purpose set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are
43152
+ # user-created subnetworks that are reserved for Envoy-based load balancers. A
43153
+ # subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services
43154
+ # using Private Service Connect. A subnet with purpose set to PEER_MIGRATION is
43155
+ # used for subnet migration from one peered VPC to another. If unspecified, the
43156
+ # subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported
43157
+ # if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or
43158
+ # REGIONAL_MANAGED_PROXY.
42530
43159
  # Corresponds to the JSON property `purpose`
42531
43160
  # @return [String]
42532
43161
  attr_accessor :purpose
@@ -43973,14 +44602,14 @@ module Google
43973
44602
  # Represents a Target HTTPS Proxy resource. Google Compute Engine has two Target
43974
44603
  # HTTPS Proxy resources: * [Global](/compute/docs/reference/rest/v1/
43975
44604
  # targetHttpsProxies) * [Regional](/compute/docs/reference/rest/v1/
43976
- # regionTargetHttpsProxies) A target HTTPS proxy is a component of GCP HTTPS
43977
- # load balancers. * targetHttpProxies are used by global external Application
43978
- # Load Balancers, classic Application Load Balancers, cross-region internal
43979
- # Application Load Balancers, and Traffic Director. * regionTargetHttpProxies
43980
- # are used by regional internal Application Load Balancers and regional external
43981
- # Application Load Balancers. Forwarding rules reference a target HTTPS proxy,
43982
- # and the target proxy then references a URL map. For more information, read
43983
- # Using Target Proxies and Forwarding rule concepts.
44605
+ # regionTargetHttpsProxies) A target HTTPS proxy is a component of Google Cloud
44606
+ # HTTPS load balancers. * targetHttpProxies are used by global external
44607
+ # Application Load Balancers, classic Application Load Balancers, cross-region
44608
+ # internal Application Load Balancers, and Traffic Director. *
44609
+ # regionTargetHttpProxies are used by regional internal Application Load
44610
+ # Balancers and regional external Application Load Balancers. Forwarding rules
44611
+ # reference a target HTTPS proxy, and the target proxy then references a URL map.
44612
+ # For more information, read Using Target Proxies and Forwarding rule concepts.
43984
44613
  class TargetHttpsProxy
43985
44614
  include Google::Apis::Core::Hashable
43986
44615
 
@@ -46887,11 +47516,9 @@ module Google
46887
47516
 
46888
47517
  # defaultRouteAction takes effect when none of the hostRules match. The load
46889
47518
  # balancer performs advanced routing actions, such as URL rewrites and header
46890
- # transformations, before forwarding the request to the selected backend. If
46891
- # defaultRouteAction specifies any weightedBackendServices, defaultService must
46892
- # not be set. Conversely if defaultService is set, defaultRouteAction cannot
46893
- # contain any weightedBackendServices. Only one of defaultRouteAction or
46894
- # defaultUrlRedirect must be set. URL maps for classic Application Load
47519
+ # transformations, before forwarding the request to the selected backend. Only
47520
+ # one of defaultUrlRedirect, defaultService or defaultRouteAction.
47521
+ # weightedBackendService can be set. URL maps for classic Application Load
46895
47522
  # Balancers only support the urlRewrite action within defaultRouteAction.
46896
47523
  # defaultRouteAction has no effect when the URL map is bound to a target gRPC
46897
47524
  # proxy that has the validateForProxyless field set to true.
@@ -46902,14 +47529,10 @@ module Google
46902
47529
  # The full or partial URL of the defaultService resource to which traffic is
46903
47530
  # directed if none of the hostRules match. If defaultRouteAction is also
46904
47531
  # specified, advanced routing actions, such as URL rewrites, take effect before
46905
- # sending the request to the backend. However, if defaultService is specified,
46906
- # defaultRouteAction cannot contain any defaultRouteAction.
46907
- # weightedBackendServices. Conversely, if defaultRouteAction specifies any
46908
- # defaultRouteAction.weightedBackendServices, defaultService must not be
46909
- # specified. If defaultService is specified, then set either defaultUrlRedirect ,
46910
- # or defaultRouteAction.weightedBackendService Don't set both. defaultService
46911
- # has no effect when the URL map is bound to a target gRPC proxy that has the
46912
- # validateForProxyless field set to true.
47532
+ # sending the request to the backend. Only one of defaultUrlRedirect,
47533
+ # defaultService or defaultRouteAction.weightedBackendService can be set.
47534
+ # defaultService has no effect when the URL map is bound to a target gRPC proxy
47535
+ # that has the validateForProxyless field set to true.
46913
47536
  # Corresponds to the JSON property `defaultService`
46914
47537
  # @return [String]
46915
47538
  attr_accessor :default_service
@@ -47657,15 +48280,17 @@ module Google
47657
48280
  attr_accessor :network
47658
48281
 
47659
48282
  # The purpose of the resource. This field can be either PRIVATE,
47660
- # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, or PRIVATE_SERVICE_CONNECT.
47661
- # PRIVATE is the default purpose for user-created subnets or subnets that are
47662
- # automatically created in auto mode networks. Subnets with purpose set to
47663
- # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks
47664
- # that are reserved for Envoy-based load balancers. A subnet with purpose set to
47665
- # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
47666
- # Connect. If unspecified, the subnet purpose defaults to PRIVATE. The
47667
- # enableFlowLogs field isn't supported if the subnet purpose field is set to
47668
- # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.
48283
+ # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PEER_MIGRATION or
48284
+ # PRIVATE_SERVICE_CONNECT. PRIVATE is the default purpose for user-created
48285
+ # subnets or subnets that are automatically created in auto mode networks.
48286
+ # Subnets with purpose set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are
48287
+ # user-created subnetworks that are reserved for Envoy-based load balancers. A
48288
+ # subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services
48289
+ # using Private Service Connect. A subnet with purpose set to PEER_MIGRATION is
48290
+ # used for subnet migration from one peered VPC to another. If unspecified, the
48291
+ # subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported
48292
+ # if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or
48293
+ # REGIONAL_MANAGED_PROXY.
47669
48294
  # Corresponds to the JSON property `purpose`
47670
48295
  # @return [String]
47671
48296
  attr_accessor :purpose