google-apis-compute_beta 0.107.0 → 0.108.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3142,7 +3142,8 @@ module Google
3142
3142
  # CACHE_ALL_STATIC Automatically cache static content, including common image
3143
3143
  # formats, media (video and audio), and web assets (JavaScript and CSS).
3144
3144
  # Requests and responses that are marked as uncacheable, as well as dynamic
3145
- # content (including HTML), will not be cached.
3145
+ # content (including HTML), will not be cached. If no value is provided for
3146
+ # cdnPolicy.cacheMode, it defaults to CACHE_ALL_STATIC.
3146
3147
  # Corresponds to the JSON property `cacheMode`
3147
3148
  # @return [String]
3148
3149
  attr_accessor :cache_mode
@@ -4130,7 +4131,8 @@ module Google
4130
4131
  # CACHE_ALL_STATIC Automatically cache static content, including common image
4131
4132
  # formats, media (video and audio), and web assets (JavaScript and CSS).
4132
4133
  # Requests and responses that are marked as uncacheable, as well as dynamic
4133
- # content (including HTML), will not be cached.
4134
+ # content (including HTML), will not be cached. If no value is provided for
4135
+ # cdnPolicy.cacheMode, it defaults to CACHE_ALL_STATIC.
4134
4136
  # Corresponds to the JSON property `cacheMode`
4135
4137
  # @return [String]
4136
4138
  attr_accessor :cache_mode
@@ -4981,6 +4983,25 @@ module Google
4981
4983
  end
4982
4984
  end
4983
4985
 
4986
+ #
4987
+ class BackendServicesGetEffectiveSecurityPoliciesResponse
4988
+ include Google::Apis::Core::Hashable
4989
+
4990
+ # Effective security policies for the backend service.
4991
+ # Corresponds to the JSON property `securityPolicies`
4992
+ # @return [Array<Google::Apis::ComputeBeta::SecurityPolicy>]
4993
+ attr_accessor :security_policies
4994
+
4995
+ def initialize(**args)
4996
+ update!(**args)
4997
+ end
4998
+
4999
+ # Update properties of this object
5000
+ def update!(**args)
5001
+ @security_policies = args[:security_policies] if args.key?(:security_policies)
5002
+ end
5003
+ end
5004
+
4984
5005
  #
4985
5006
  class BackendServicesScopedList
4986
5007
  include Google::Apis::Core::Hashable
@@ -11044,25 +11065,12 @@ module Google
11044
11065
  # @return [String]
11045
11066
  attr_accessor :description
11046
11067
 
11047
- # Indicates if this group of VMs have opportunistic maintenance enabled. This
11048
- # will be set on the FR by customers, and will be used for reservation and
11049
- # reservation block maintenance .
11050
- # Corresponds to the JSON property `enableOpportunisticMaintenance`
11051
- # @return [Boolean]
11052
- attr_accessor :enable_opportunistic_maintenance
11053
- alias_method :enable_opportunistic_maintenance?, :enable_opportunistic_maintenance
11054
-
11055
11068
  # [Output Only] A unique identifier for this future reservation. The server
11056
11069
  # defines this identifier.
11057
11070
  # Corresponds to the JSON property `id`
11058
11071
  # @return [Fixnum]
11059
11072
  attr_accessor :id
11060
11073
 
11061
- # Action to take during reservation termination.
11062
- # Corresponds to the JSON property `instanceTerminationAction`
11063
- # @return [String]
11064
- attr_accessor :instance_termination_action
11065
-
11066
11074
  # [Output Only] Type of the resource. Always compute#futureReservation for
11067
11075
  # future reservations.
11068
11076
  # Corresponds to the JSON property `kind`
@@ -11162,9 +11170,7 @@ module Google
11162
11170
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
11163
11171
  @deployment_type = args[:deployment_type] if args.key?(:deployment_type)
11164
11172
  @description = args[:description] if args.key?(:description)
11165
- @enable_opportunistic_maintenance = args[:enable_opportunistic_maintenance] if args.key?(:enable_opportunistic_maintenance)
11166
11173
  @id = args[:id] if args.key?(:id)
11167
- @instance_termination_action = args[:instance_termination_action] if args.key?(:instance_termination_action)
11168
11174
  @kind = args[:kind] if args.key?(:kind)
11169
11175
  @name = args[:name] if args.key?(:name)
11170
11176
  @name_prefix = args[:name_prefix] if args.key?(:name_prefix)
@@ -12088,13 +12094,6 @@ module Google
12088
12094
  class GroupMaintenanceInfo
12089
12095
  include Google::Apis::Core::Hashable
12090
12096
 
12091
- # This setting enables or disables opportunistic maintenance. If enabled,
12092
- # maintenance is performed on unused reservations whenever possible.
12093
- # Corresponds to the JSON property `enableOpportunisticMaintenance`
12094
- # @return [Boolean]
12095
- attr_accessor :enable_opportunistic_maintenance
12096
- alias_method :enable_opportunistic_maintenance?, :enable_opportunistic_maintenance
12097
-
12098
12097
  # Progress for ongoing maintenance for this group of VMs/hosts. Describes number
12099
12098
  # of hosts in the block that have ongoing maintenance.
12100
12099
  # Corresponds to the JSON property `maintenanceOngoingCount`
@@ -12123,7 +12122,6 @@ module Google
12123
12122
 
12124
12123
  # Update properties of this object
12125
12124
  def update!(**args)
12126
- @enable_opportunistic_maintenance = args[:enable_opportunistic_maintenance] if args.key?(:enable_opportunistic_maintenance)
12127
12125
  @maintenance_ongoing_count = args[:maintenance_ongoing_count] if args.key?(:maintenance_ongoing_count)
12128
12126
  @maintenance_pending_count = args[:maintenance_pending_count] if args.key?(:maintenance_pending_count)
12129
12127
  @scheduling_type = args[:scheduling_type] if args.key?(:scheduling_type)
@@ -14404,12 +14402,10 @@ module Google
14404
14402
 
14405
14403
  # In response to a matching matchRule, the load balancer performs advanced
14406
14404
  # routing actions, such as URL rewrites and header transformations, before
14407
- # forwarding the request to the selected backend. If routeAction specifies any
14408
- # weightedBackendServices, service must not be set. Conversely if service is set,
14409
- # routeAction cannot contain any weightedBackendServices. Only one of
14410
- # urlRedirect, service or routeAction.weightedBackendService must be set. URL
14411
- # maps for classic Application Load Balancers only support the urlRewrite action
14412
- # within a route rule's routeAction.
14405
+ # forwarding the request to the selected backend. Only one of urlRedirect,
14406
+ # service or routeAction.weightedBackendService can be set. URL maps for classic
14407
+ # Application Load Balancers only support the urlRewrite action within a route
14408
+ # rule's routeAction.
14413
14409
  # Corresponds to the JSON property `routeAction`
14414
14410
  # @return [Google::Apis::ComputeBeta::HttpRouteAction]
14415
14411
  attr_accessor :route_action
@@ -14417,10 +14413,8 @@ module Google
14417
14413
  # The full or partial URL of the backend service resource to which traffic is
14418
14414
  # directed if this rule is matched. If routeAction is also specified, advanced
14419
14415
  # routing actions, such as URL rewrites, take effect before sending the request
14420
- # to the backend. However, if service is specified, routeAction cannot contain
14421
- # any weightedBackendServices. Conversely, if routeAction specifies any
14422
- # weightedBackendServices, service must not be specified. Only one of
14423
- # urlRedirect, service or routeAction.weightedBackendService must be set.
14416
+ # to the backend. Only one of urlRedirect, service or routeAction.
14417
+ # weightedBackendService can be set.
14424
14418
  # Corresponds to the JSON property `service`
14425
14419
  # @return [String]
14426
14420
  attr_accessor :service
@@ -20131,6 +20125,11 @@ module Google
20131
20125
  # @return [String]
20132
20126
  attr_accessor :name
20133
20127
 
20128
+ # [Output Only] The packet mirroring rules that apply to the instance.
20129
+ # Corresponds to the JSON property `packetMirroringRules`
20130
+ # @return [Array<Google::Apis::ComputeBeta::FirewallPolicyRule>]
20131
+ attr_accessor :packet_mirroring_rules
20132
+
20134
20133
  # [Output only] Priority of firewall policy association. Not applicable for type=
20135
20134
  # HIERARCHY.
20136
20135
  # Corresponds to the JSON property `priority`
@@ -20163,6 +20162,7 @@ module Google
20163
20162
  def update!(**args)
20164
20163
  @display_name = args[:display_name] if args.key?(:display_name)
20165
20164
  @name = args[:name] if args.key?(:name)
20165
+ @packet_mirroring_rules = args[:packet_mirroring_rules] if args.key?(:packet_mirroring_rules)
20166
20166
  @priority = args[:priority] if args.key?(:priority)
20167
20167
  @rules = args[:rules] if args.key?(:rules)
20168
20168
  @short_name = args[:short_name] if args.key?(:short_name)
@@ -22672,7 +22672,7 @@ module Google
22672
22672
  attr_accessor :availability_zone
22673
22673
 
22674
22674
  # [Output only] List of features available at this InterconnectLocation, which
22675
- # can take one of the following values: - MACSEC
22675
+ # can take one of the following values: - IF_MACSEC
22676
22676
  # Corresponds to the JSON property `availableFeatures`
22677
22677
  # @return [Array<String>]
22678
22678
  attr_accessor :available_features
@@ -23612,7 +23612,7 @@ module Google
23612
23612
  # @return [String]
23613
23613
  attr_accessor :name
23614
23614
 
23615
- #
23615
+ # [Input Only] Deprecated.
23616
23616
  # Corresponds to the JSON property `resourceRequirements`
23617
23617
  # @return [Google::Apis::ComputeBeta::LicenseResourceRequirements]
23618
23618
  attr_accessor :resource_requirements
@@ -23782,14 +23782,14 @@ module Google
23782
23782
  class LicenseResourceRequirements
23783
23783
  include Google::Apis::Core::Hashable
23784
23784
 
23785
- # Minimum number of guest cpus required to use the Instance. Enforced at
23786
- # Instance creation and Instance start.
23785
+ # [Input Only] Deprecated. This field no longer reflects the minimum number of
23786
+ # guest cpus required to use the Instance.
23787
23787
  # Corresponds to the JSON property `minGuestCpuCount`
23788
23788
  # @return [Fixnum]
23789
23789
  attr_accessor :min_guest_cpu_count
23790
23790
 
23791
- # Minimum memory required to use the Instance. Enforced at Instance creation and
23792
- # Instance start.
23791
+ # [Input Only] Deprecated. This field no longer reflects the minimum memory
23792
+ # required to use the Instance.
23793
23793
  # Corresponds to the JSON property `minMemoryMb`
23794
23794
  # @return [Fixnum]
23795
23795
  attr_accessor :min_memory_mb
@@ -25322,7 +25322,8 @@ module Google
25322
25322
  # @return [String]
25323
25323
  attr_accessor :region
25324
25324
 
25325
- # Resource policies for this multi-MIG.
25325
+ # Resource policies message for a multi-MIG. Specifies the workload policy
25326
+ # configuration of the multi-MIG.
25326
25327
  # Corresponds to the JSON property `resourcePolicies`
25327
25328
  # @return [Google::Apis::ComputeBeta::MultiMigResourcePolicies]
25328
25329
  attr_accessor :resource_policies
@@ -25349,11 +25350,17 @@ module Google
25349
25350
  end
25350
25351
  end
25351
25352
 
25352
- #
25353
+ # Resource policies message for a multi-MIG. Specifies the workload policy
25354
+ # configuration of the multi-MIG.
25353
25355
  class MultiMigResourcePolicies
25354
25356
  include Google::Apis::Core::Hashable
25355
25357
 
25356
- #
25358
+ # The URL of the workload policy for this multi-MIG. It can be a full or partial
25359
+ # URL. For example, the following are all valid URLs to a workload policy: -
25360
+ # https://www.googleapis.com/compute/v1/projects/project/regions/region /
25361
+ # resourcePolicies/resourcePolicy - projects/project/regions/region/
25362
+ # resourcePolicies/resourcePolicy - regions/region/resourcePolicies/
25363
+ # resourcePolicy
25357
25364
  # Corresponds to the JSON property `workloadPolicy`
25358
25365
  # @return [String]
25359
25366
  attr_accessor :workload_policy
@@ -25698,7 +25705,7 @@ module Google
25698
25705
 
25699
25706
  # A full or partial URL of the network profile to apply to this network. This
25700
25707
  # field can be set only at resource creation time. For example, the following
25701
- # are valid URLs: - https://www.googleapis.com/compute/alpha/projects/`
25708
+ # are valid URLs: - https://www.googleapis.com/compute/`api_version`/projects/`
25702
25709
  # project_id`/global/networkProfiles/`network_profile_name` - projects/`
25703
25710
  # project_id`/global/networkProfiles/`network_profile_name`
25704
25711
  # Corresponds to the JSON property `networkProfile`
@@ -28077,6 +28084,11 @@ module Google
28077
28084
  # @return [String]
28078
28085
  attr_accessor :kind
28079
28086
 
28087
+ # [Output Only] Location to which the network is restricted.
28088
+ # Corresponds to the JSON property `location`
28089
+ # @return [Google::Apis::ComputeBeta::NetworkProfileLocation]
28090
+ attr_accessor :location
28091
+
28080
28092
  # [Output Only] Name of the resource.
28081
28093
  # Corresponds to the JSON property `name`
28082
28094
  # @return [String]
@@ -28108,6 +28120,7 @@ module Google
28108
28120
  @features = args[:features] if args.key?(:features)
28109
28121
  @id = args[:id] if args.key?(:id)
28110
28122
  @kind = args[:kind] if args.key?(:kind)
28123
+ @location = args[:location] if args.key?(:location)
28111
28124
  @name = args[:name] if args.key?(:name)
28112
28125
  @self_link = args[:self_link] if args.key?(:self_link)
28113
28126
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -28115,6 +28128,31 @@ module Google
28115
28128
  end
28116
28129
  end
28117
28130
 
28131
+ #
28132
+ class NetworkProfileLocation
28133
+ include Google::Apis::Core::Hashable
28134
+
28135
+ #
28136
+ # Corresponds to the JSON property `name`
28137
+ # @return [String]
28138
+ attr_accessor :name
28139
+
28140
+ #
28141
+ # Corresponds to the JSON property `scope`
28142
+ # @return [String]
28143
+ attr_accessor :scope
28144
+
28145
+ def initialize(**args)
28146
+ update!(**args)
28147
+ end
28148
+
28149
+ # Update properties of this object
28150
+ def update!(**args)
28151
+ @name = args[:name] if args.key?(:name)
28152
+ @scope = args[:scope] if args.key?(:scope)
28153
+ end
28154
+ end
28155
+
28118
28156
  #
28119
28157
  class NetworkProfileNetworkFeatures
28120
28158
  include Google::Apis::Core::Hashable
@@ -28421,6 +28459,17 @@ module Google
28421
28459
  # @return [String]
28422
28460
  attr_accessor :bgp_inter_region_cost
28423
28461
 
28462
+ # [Output Only] Effective value of the bgp_always_compare_med field.
28463
+ # Corresponds to the JSON property `effectiveBgpAlwaysCompareMed`
28464
+ # @return [Boolean]
28465
+ attr_accessor :effective_bgp_always_compare_med
28466
+ alias_method :effective_bgp_always_compare_med?, :effective_bgp_always_compare_med
28467
+
28468
+ # [Output Only] Effective value of the bgp_inter_region_cost field.
28469
+ # Corresponds to the JSON property `effectiveBgpInterRegionCost`
28470
+ # @return [String]
28471
+ attr_accessor :effective_bgp_inter_region_cost
28472
+
28424
28473
  # The network-wide routing mode to use. If set to REGIONAL, this network's Cloud
28425
28474
  # Routers will only advertise routes with subnets of this network in the same
28426
28475
  # region as the router. If set to GLOBAL, this network's Cloud Routers will
@@ -28438,6 +28487,8 @@ module Google
28438
28487
  @bgp_always_compare_med = args[:bgp_always_compare_med] if args.key?(:bgp_always_compare_med)
28439
28488
  @bgp_best_path_selection_mode = args[:bgp_best_path_selection_mode] if args.key?(:bgp_best_path_selection_mode)
28440
28489
  @bgp_inter_region_cost = args[:bgp_inter_region_cost] if args.key?(:bgp_inter_region_cost)
28490
+ @effective_bgp_always_compare_med = args[:effective_bgp_always_compare_med] if args.key?(:effective_bgp_always_compare_med)
28491
+ @effective_bgp_inter_region_cost = args[:effective_bgp_inter_region_cost] if args.key?(:effective_bgp_inter_region_cost)
28441
28492
  @routing_mode = args[:routing_mode] if args.key?(:routing_mode)
28442
28493
  end
28443
28494
  end
@@ -28538,6 +28589,11 @@ module Google
28538
28589
  # @return [String]
28539
28590
  attr_accessor :name
28540
28591
 
28592
+ # [Output Only] The packet mirroring rules that apply to the network.
28593
+ # Corresponds to the JSON property `packetMirroringRules`
28594
+ # @return [Array<Google::Apis::ComputeBeta::FirewallPolicyRule>]
28595
+ attr_accessor :packet_mirroring_rules
28596
+
28541
28597
  # [Output only] Priority of firewall policy association. Not applicable for type=
28542
28598
  # HIERARCHY.
28543
28599
  # Corresponds to the JSON property `priority`
@@ -28567,6 +28623,7 @@ module Google
28567
28623
  def update!(**args)
28568
28624
  @display_name = args[:display_name] if args.key?(:display_name)
28569
28625
  @name = args[:name] if args.key?(:name)
28626
+ @packet_mirroring_rules = args[:packet_mirroring_rules] if args.key?(:packet_mirroring_rules)
28570
28627
  @priority = args[:priority] if args.key?(:priority)
28571
28628
  @rules = args[:rules] if args.key?(:rules)
28572
28629
  @short_name = args[:short_name] if args.key?(:short_name)
@@ -32227,11 +32284,8 @@ module Google
32227
32284
  # defaultRouteAction takes effect when none of the pathRules or routeRules match.
32228
32285
  # The load balancer performs advanced routing actions, such as URL rewrites and
32229
32286
  # header transformations, before forwarding the request to the selected backend.
32230
- # If defaultRouteAction specifies any weightedBackendServices, defaultService
32231
- # must not be set. Conversely if defaultService is set, defaultRouteAction
32232
- # cannot contain any weightedBackendServices. If defaultRouteAction is specified,
32233
- # don't set defaultUrlRedirect. If defaultRouteAction.weightedBackendServices
32234
- # is specified, don't set defaultService. URL maps for classic Application Load
32287
+ # Only one of defaultUrlRedirect, defaultService or defaultRouteAction.
32288
+ # weightedBackendService can be set. URL maps for classic Application Load
32235
32289
  # Balancers only support the urlRewrite action within a path matcher's
32236
32290
  # defaultRouteAction.
32237
32291
  # Corresponds to the JSON property `defaultRouteAction`
@@ -32245,14 +32299,11 @@ module Google
32245
32299
  # backendService - compute/v1/projects/project/global/backendServices/
32246
32300
  # backendService - global/backendServices/backendService If defaultRouteAction
32247
32301
  # is also specified, advanced routing actions, such as URL rewrites, take effect
32248
- # before sending the request to the backend. However, if defaultService is
32249
- # specified, defaultRouteAction cannot contain any weightedBackendServices.
32250
- # Conversely, if defaultRouteAction specifies any weightedBackendServices,
32251
- # defaultService must not be specified. If defaultService is specified, then set
32252
- # either defaultUrlRedirect or defaultRouteAction.weightedBackendService. Don't
32253
- # set both. Authorization requires one or more of the following Google IAM
32254
- # permissions on the specified resource default_service: - compute.
32255
- # backendBuckets.use - compute.backendServices.use
32302
+ # before sending the request to the backend. Only one of defaultUrlRedirect,
32303
+ # defaultService or defaultRouteAction.weightedBackendService can be set.
32304
+ # Authorization requires one or more of the following Google IAM permissions on
32305
+ # the specified resource default_service: - compute.backendBuckets.use - compute.
32306
+ # backendServices.use
32256
32307
  # Corresponds to the JSON property `defaultService`
32257
32308
  # @return [String]
32258
32309
  attr_accessor :default_service
@@ -32336,11 +32387,10 @@ module Google
32336
32387
 
32337
32388
  # In response to a matching path, the load balancer performs advanced routing
32338
32389
  # actions, such as URL rewrites and header transformations, before forwarding
32339
- # the request to the selected backend. If routeAction specifies any
32340
- # weightedBackendServices, service must not be set. Conversely if service is set,
32341
- # routeAction cannot contain any weightedBackendServices. Only one of
32342
- # routeAction or urlRedirect must be set. URL maps for classic Application Load
32343
- # Balancers only support the urlRewrite action within a path rule's routeAction.
32390
+ # the request to the selected backend. Only one of urlRedirect, service or
32391
+ # routeAction.weightedBackendService can be set. URL maps for classic
32392
+ # Application Load Balancers only support the urlRewrite action within a path
32393
+ # rule's routeAction.
32344
32394
  # Corresponds to the JSON property `routeAction`
32345
32395
  # @return [Google::Apis::ComputeBeta::HttpRouteAction]
32346
32396
  attr_accessor :route_action
@@ -32348,10 +32398,8 @@ module Google
32348
32398
  # The full or partial URL of the backend service resource to which traffic is
32349
32399
  # directed if this rule is matched. If routeAction is also specified, advanced
32350
32400
  # routing actions, such as URL rewrites, take effect before sending the request
32351
- # to the backend. However, if service is specified, routeAction cannot contain
32352
- # any weightedBackendServices. Conversely, if routeAction specifies any
32353
- # weightedBackendServices, service must not be specified. Only one of
32354
- # urlRedirect, service or routeAction.weightedBackendService must be set.
32401
+ # to the backend. Only one of urlRedirect, service or routeAction.
32402
+ # weightedBackendService can be set.
32355
32403
  # Corresponds to the JSON property `service`
32356
32404
  # @return [String]
32357
32405
  attr_accessor :service
@@ -32392,7 +32440,7 @@ module Google
32392
32440
  # Serves as a merge key during UpdatePerInstanceConfigs operations, that is, if
32393
32441
  # a per-instance configuration with the same name exists then it will be updated,
32394
32442
  # otherwise a new one will be created for the VM instance with the same name.
32395
- # An attempt to create a per-instance configconfiguration for a VM instance that
32443
+ # An attempt to create a per-instance configuration for a VM instance that
32396
32444
  # either doesn't exist or is not part of the group will result in an error.
32397
32445
  # Corresponds to the JSON property `name`
32398
32446
  # @return [String]
@@ -32707,7 +32755,7 @@ module Google
32707
32755
  # @return [String]
32708
32756
  attr_accessor :description
32709
32757
 
32710
- # Restricted features enabled for use on this project.
32758
+ # An optional list of restricted features enabled for use on this project.
32711
32759
  # Corresponds to the JSON property `enabledFeatures`
32712
32760
  # @return [Array<String>]
32713
32761
  attr_accessor :enabled_features
@@ -35736,6 +35784,11 @@ module Google
35736
35784
  # @return [String]
35737
35785
  attr_accessor :name
35738
35786
 
35787
+ # [Output only] The packet mirroring rules that apply to the network.
35788
+ # Corresponds to the JSON property `packetMirroringRules`
35789
+ # @return [Array<Google::Apis::ComputeBeta::FirewallPolicyRule>]
35790
+ attr_accessor :packet_mirroring_rules
35791
+
35739
35792
  # [Output only] Priority of firewall policy association. Not applicable for type=
35740
35793
  # HIERARCHY.
35741
35794
  # Corresponds to the JSON property `priority`
@@ -35761,6 +35814,7 @@ module Google
35761
35814
  def update!(**args)
35762
35815
  @display_name = args[:display_name] if args.key?(:display_name)
35763
35816
  @name = args[:name] if args.key?(:name)
35817
+ @packet_mirroring_rules = args[:packet_mirroring_rules] if args.key?(:packet_mirroring_rules)
35764
35818
  @priority = args[:priority] if args.key?(:priority)
35765
35819
  @rules = args[:rules] if args.key?(:rules)
35766
35820
  @type = args[:type] if args.key?(:type)
@@ -36000,12 +36054,6 @@ module Google
36000
36054
  # @return [Fixnum]
36001
36055
  attr_accessor :id
36002
36056
 
36003
- # Instance termination action is invoked when the reservation is deleted. This
36004
- # only applies to reservations with a Deployment type.
36005
- # Corresponds to the JSON property `instanceTerminationAction`
36006
- # @return [String]
36007
- attr_accessor :instance_termination_action
36008
-
36009
36057
  # [Output Only] Type of the resource. Always compute#reservations for
36010
36058
  # reservations.
36011
36059
  # Corresponds to the JSON property `kind`
@@ -36098,7 +36146,6 @@ module Google
36098
36146
  @deployment_type = args[:deployment_type] if args.key?(:deployment_type)
36099
36147
  @description = args[:description] if args.key?(:description)
36100
36148
  @id = args[:id] if args.key?(:id)
36101
- @instance_termination_action = args[:instance_termination_action] if args.key?(:instance_termination_action)
36102
36149
  @kind = args[:kind] if args.key?(:kind)
36103
36150
  @name = args[:name] if args.key?(:name)
36104
36151
  @reservation_sharing_policy = args[:reservation_sharing_policy] if args.key?(:reservation_sharing_policy)
@@ -37733,16 +37780,28 @@ module Google
37733
37780
  class ResourceStatus
37734
37781
  include Google::Apis::Core::Hashable
37735
37782
 
37736
- # [Output Only] An opaque ID of the host on which the VM is running.
37783
+ # [Output Only] The precise location of your instance within the zone's data
37784
+ # center, including the block, sub-block, and host. The field is formatted as
37785
+ # follows: blockId/subBlockId/hostId.
37737
37786
  # Corresponds to the JSON property `physicalHost`
37738
37787
  # @return [String]
37739
37788
  attr_accessor :physical_host
37740
37789
 
37790
+ # Represents the physical host topology of the host on which the VM is running.
37791
+ # Corresponds to the JSON property `physicalHostTopology`
37792
+ # @return [Google::Apis::ComputeBeta::ResourceStatusPhysicalHostTopology]
37793
+ attr_accessor :physical_host_topology
37794
+
37741
37795
  #
37742
37796
  # Corresponds to the JSON property `scheduling`
37743
37797
  # @return [Google::Apis::ComputeBeta::ResourceStatusScheduling]
37744
37798
  attr_accessor :scheduling
37745
37799
 
37800
+ # [Output Only] Details about the instance stopping state.
37801
+ # Corresponds to the JSON property `shutdownDetails`
37802
+ # @return [Google::Apis::ComputeBeta::ResourceStatusShutdownDetails]
37803
+ attr_accessor :shutdown_details
37804
+
37746
37805
  # Upcoming Maintenance notification information.
37747
37806
  # Corresponds to the JSON property `upcomingMaintenance`
37748
37807
  # @return [Google::Apis::ComputeBeta::UpcomingMaintenance]
@@ -37755,11 +37814,55 @@ module Google
37755
37814
  # Update properties of this object
37756
37815
  def update!(**args)
37757
37816
  @physical_host = args[:physical_host] if args.key?(:physical_host)
37817
+ @physical_host_topology = args[:physical_host_topology] if args.key?(:physical_host_topology)
37758
37818
  @scheduling = args[:scheduling] if args.key?(:scheduling)
37819
+ @shutdown_details = args[:shutdown_details] if args.key?(:shutdown_details)
37759
37820
  @upcoming_maintenance = args[:upcoming_maintenance] if args.key?(:upcoming_maintenance)
37760
37821
  end
37761
37822
  end
37762
37823
 
37824
+ # Represents the physical host topology of the host on which the VM is running.
37825
+ class ResourceStatusPhysicalHostTopology
37826
+ include Google::Apis::Core::Hashable
37827
+
37828
+ # [Output Only] The ID of the block in which the running instance is located.
37829
+ # Instances within the same block experience low network latency.
37830
+ # Corresponds to the JSON property `block`
37831
+ # @return [String]
37832
+ attr_accessor :block
37833
+
37834
+ # [Output Only] The global name of the Compute Engine cluster where the running
37835
+ # instance is located.
37836
+ # Corresponds to the JSON property `cluster`
37837
+ # @return [String]
37838
+ attr_accessor :cluster
37839
+
37840
+ # [Output Only] The ID of the host on which the running instance is located.
37841
+ # Instances on the same host experience the lowest possible network latency.
37842
+ # Corresponds to the JSON property `host`
37843
+ # @return [String]
37844
+ attr_accessor :host
37845
+
37846
+ # [Output Only] The ID of the sub-block in which the running instance is located.
37847
+ # Instances in the same sub-block experience lower network latency than
37848
+ # instances in the same block.
37849
+ # Corresponds to the JSON property `subblock`
37850
+ # @return [String]
37851
+ attr_accessor :subblock
37852
+
37853
+ def initialize(**args)
37854
+ update!(**args)
37855
+ end
37856
+
37857
+ # Update properties of this object
37858
+ def update!(**args)
37859
+ @block = args[:block] if args.key?(:block)
37860
+ @cluster = args[:cluster] if args.key?(:cluster)
37861
+ @host = args[:host] if args.key?(:host)
37862
+ @subblock = args[:subblock] if args.key?(:subblock)
37863
+ end
37864
+ end
37865
+
37763
37866
  #
37764
37867
  class ResourceStatusScheduling
37765
37868
  include Google::Apis::Core::Hashable
@@ -37787,6 +37890,46 @@ module Google
37787
37890
  end
37788
37891
  end
37789
37892
 
37893
+ #
37894
+ class ResourceStatusShutdownDetails
37895
+ include Google::Apis::Core::Hashable
37896
+
37897
+ # A Duration represents a fixed-length span of time represented as a count of
37898
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
37899
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
37900
+ # 000 years.
37901
+ # Corresponds to the JSON property `maxDuration`
37902
+ # @return [Google::Apis::ComputeBeta::Duration]
37903
+ attr_accessor :max_duration
37904
+
37905
+ #
37906
+ # Corresponds to the JSON property `requestTimestamp`
37907
+ # @return [String]
37908
+ attr_accessor :request_timestamp
37909
+
37910
+ #
37911
+ # Corresponds to the JSON property `stopState`
37912
+ # @return [String]
37913
+ attr_accessor :stop_state
37914
+
37915
+ #
37916
+ # Corresponds to the JSON property `targetState`
37917
+ # @return [String]
37918
+ attr_accessor :target_state
37919
+
37920
+ def initialize(**args)
37921
+ update!(**args)
37922
+ end
37923
+
37924
+ # Update properties of this object
37925
+ def update!(**args)
37926
+ @max_duration = args[:max_duration] if args.key?(:max_duration)
37927
+ @request_timestamp = args[:request_timestamp] if args.key?(:request_timestamp)
37928
+ @stop_state = args[:stop_state] if args.key?(:stop_state)
37929
+ @target_state = args[:target_state] if args.key?(:target_state)
37930
+ end
37931
+ end
37932
+
37790
37933
  # A rollout policy configuration.
37791
37934
  class RolloutPolicy
37792
37935
  include Google::Apis::Core::Hashable
@@ -39275,6 +39418,13 @@ module Google
39275
39418
  # @return [String]
39276
39419
  attr_accessor :name
39277
39420
 
39421
+ # List of Subnetwork resources whose traffic should be translated by NAT64
39422
+ # Gateway. It is used only when LIST_OF_IPV6_SUBNETWORKS is selected for the
39423
+ # SubnetworkIpRangeToNat64Option above.
39424
+ # Corresponds to the JSON property `nat64Subnetworks`
39425
+ # @return [Array<Google::Apis::ComputeBeta::RouterNatSubnetworkToNat64>]
39426
+ attr_accessor :nat64_subnetworks
39427
+
39278
39428
  # Specify the NatIpAllocateOption, which can take one of the following values: -
39279
39429
  # MANUAL_ONLY: Uses only Nat IP addresses provided by customers. When there are
39280
39430
  # not enough specified Nat IPs, the Nat service fails for new VMs. - AUTO_ONLY:
@@ -39307,6 +39457,18 @@ module Google
39307
39457
  # @return [String]
39308
39458
  attr_accessor :source_subnetwork_ip_ranges_to_nat
39309
39459
 
39460
+ # Specify the Nat option for NAT64, which can take one of the following values: -
39461
+ # ALL_IPV6_SUBNETWORKS: All of the IP ranges in every Subnetwork are allowed to
39462
+ # Nat. - LIST_OF_IPV6_SUBNETWORKS: A list of Subnetworks are allowed to Nat (
39463
+ # specified in the field nat64_subnetwork below) The default is
39464
+ # NAT64_OPTION_UNSPECIFIED. Note that if this field contains
39465
+ # NAT64_ALL_V6_SUBNETWORKS no other Router.Nat section in this region can also
39466
+ # enable NAT64 for any Subnetworks in this network. Other Router.Nat sections
39467
+ # can still be present to enable NAT44 only.
39468
+ # Corresponds to the JSON property `sourceSubnetworkIpRangesToNat64`
39469
+ # @return [String]
39470
+ attr_accessor :source_subnetwork_ip_ranges_to_nat64
39471
+
39310
39472
  # A list of Subnetwork resources whose traffic should be translated by NAT
39311
39473
  # Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the
39312
39474
  # SubnetworkIpRangeToNatOption above.
@@ -39359,10 +39521,12 @@ module Google
39359
39521
  @max_ports_per_vm = args[:max_ports_per_vm] if args.key?(:max_ports_per_vm)
39360
39522
  @min_ports_per_vm = args[:min_ports_per_vm] if args.key?(:min_ports_per_vm)
39361
39523
  @name = args[:name] if args.key?(:name)
39524
+ @nat64_subnetworks = args[:nat64_subnetworks] if args.key?(:nat64_subnetworks)
39362
39525
  @nat_ip_allocate_option = args[:nat_ip_allocate_option] if args.key?(:nat_ip_allocate_option)
39363
39526
  @nat_ips = args[:nat_ips] if args.key?(:nat_ips)
39364
39527
  @rules = args[:rules] if args.key?(:rules)
39365
39528
  @source_subnetwork_ip_ranges_to_nat = args[:source_subnetwork_ip_ranges_to_nat] if args.key?(:source_subnetwork_ip_ranges_to_nat)
39529
+ @source_subnetwork_ip_ranges_to_nat64 = args[:source_subnetwork_ip_ranges_to_nat64] if args.key?(:source_subnetwork_ip_ranges_to_nat64)
39366
39530
  @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
39367
39531
  @tcp_established_idle_timeout_sec = args[:tcp_established_idle_timeout_sec] if args.key?(:tcp_established_idle_timeout_sec)
39368
39532
  @tcp_time_wait_timeout_sec = args[:tcp_time_wait_timeout_sec] if args.key?(:tcp_time_wait_timeout_sec)
@@ -39530,6 +39694,25 @@ module Google
39530
39694
  end
39531
39695
  end
39532
39696
 
39697
+ # Specifies a subnetwork to enable NAT64.
39698
+ class RouterNatSubnetworkToNat64
39699
+ include Google::Apis::Core::Hashable
39700
+
39701
+ # URL for the subnetwork resource that will use NAT64.
39702
+ # Corresponds to the JSON property `name`
39703
+ # @return [String]
39704
+ attr_accessor :name
39705
+
39706
+ def initialize(**args)
39707
+ update!(**args)
39708
+ end
39709
+
39710
+ # Update properties of this object
39711
+ def update!(**args)
39712
+ @name = args[:name] if args.key?(:name)
39713
+ end
39714
+ end
39715
+
39533
39716
  #
39534
39717
  class RouterStatus
39535
39718
  include Google::Apis::Core::Hashable
@@ -40557,6 +40740,11 @@ module Google
40557
40740
  # @return [Fixnum]
40558
40741
  attr_accessor :availability_domain
40559
40742
 
40743
+ # The configuration for gracefully shutting down the instance.
40744
+ # Corresponds to the JSON property `gracefulShutdown`
40745
+ # @return [Google::Apis::ComputeBeta::SchedulingGracefulShutdown]
40746
+ attr_accessor :graceful_shutdown
40747
+
40560
40748
  # Specify the time in seconds for host error detection, the value must be within
40561
40749
  # the range of [90, 330] with the increment of 30, if unset, the default
40562
40750
  # behavior of host error recovery will be used.
@@ -40657,6 +40845,7 @@ module Google
40657
40845
  def update!(**args)
40658
40846
  @automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
40659
40847
  @availability_domain = args[:availability_domain] if args.key?(:availability_domain)
40848
+ @graceful_shutdown = args[:graceful_shutdown] if args.key?(:graceful_shutdown)
40660
40849
  @host_error_timeout_seconds = args[:host_error_timeout_seconds] if args.key?(:host_error_timeout_seconds)
40661
40850
  @instance_termination_action = args[:instance_termination_action] if args.key?(:instance_termination_action)
40662
40851
  @local_ssd_recovery_timeout = args[:local_ssd_recovery_timeout] if args.key?(:local_ssd_recovery_timeout)
@@ -40674,6 +40863,35 @@ module Google
40674
40863
  end
40675
40864
  end
40676
40865
 
40866
+ # The configuration for gracefully shutting down the instance.
40867
+ class SchedulingGracefulShutdown
40868
+ include Google::Apis::Core::Hashable
40869
+
40870
+ # Opts-in for graceful shutdown.
40871
+ # Corresponds to the JSON property `enabled`
40872
+ # @return [Boolean]
40873
+ attr_accessor :enabled
40874
+ alias_method :enabled?, :enabled
40875
+
40876
+ # A Duration represents a fixed-length span of time represented as a count of
40877
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
40878
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
40879
+ # 000 years.
40880
+ # Corresponds to the JSON property `maxDuration`
40881
+ # @return [Google::Apis::ComputeBeta::Duration]
40882
+ attr_accessor :max_duration
40883
+
40884
+ def initialize(**args)
40885
+ update!(**args)
40886
+ end
40887
+
40888
+ # Update properties of this object
40889
+ def update!(**args)
40890
+ @enabled = args[:enabled] if args.key?(:enabled)
40891
+ @max_duration = args[:max_duration] if args.key?(:max_duration)
40892
+ end
40893
+ end
40894
+
40677
40895
  # Node Affinity: the configuration of desired nodes onto which this Instance
40678
40896
  # could be scheduled.
40679
40897
  class SchedulingNodeAffinity
@@ -41454,6 +41672,12 @@ module Google
41454
41672
  # @return [String]
41455
41673
  attr_accessor :log_level
41456
41674
 
41675
+ # The maximum request size chosen by the customer with Waf enabled. Currently
41676
+ # only "8KB" and "128KB" are supported. Values are case insensitive.
41677
+ # Corresponds to the JSON property `requestBodyInspectionSize`
41678
+ # @return [String]
41679
+ attr_accessor :request_body_inspection_size
41680
+
41457
41681
  # An optional list of case-insensitive request header names to use for resolving
41458
41682
  # the callers client IP address.
41459
41683
  # Corresponds to the JSON property `userIpRequestHeaders`
@@ -41469,6 +41693,7 @@ module Google
41469
41693
  @json_custom_config = args[:json_custom_config] if args.key?(:json_custom_config)
41470
41694
  @json_parsing = args[:json_parsing] if args.key?(:json_parsing)
41471
41695
  @log_level = args[:log_level] if args.key?(:log_level)
41696
+ @request_body_inspection_size = args[:request_body_inspection_size] if args.key?(:request_body_inspection_size)
41472
41697
  @user_ip_request_headers = args[:user_ip_request_headers] if args.key?(:user_ip_request_headers)
41473
41698
  end
41474
41699
  end
@@ -42342,7 +42567,9 @@ module Google
42342
42567
  # originating client, which is resolved based on "userIpRequestHeaders"
42343
42568
  # configured with the security policy. If there is no "userIpRequestHeaders"
42344
42569
  # configuration or an IP address cannot be resolved from it, the key type
42345
- # defaults to IP.
42570
+ # defaults to IP. - TLS_JA4_FINGERPRINT: JA4 TLS/SSL fingerprint if the client
42571
+ # connects using HTTPS, HTTP/2 or HTTP/3. If not available, the key type
42572
+ # defaults to ALL.
42346
42573
  # Corresponds to the JSON property `enforceOnKey`
42347
42574
  # @return [String]
42348
42575
  attr_accessor :enforce_on_key
@@ -42437,7 +42664,9 @@ module Google
42437
42664
  # originating client, which is resolved based on "userIpRequestHeaders"
42438
42665
  # configured with the security policy. If there is no "userIpRequestHeaders"
42439
42666
  # configuration or an IP address cannot be resolved from it, the key type
42440
- # defaults to IP.
42667
+ # defaults to IP. - TLS_JA4_FINGERPRINT: JA4 TLS/SSL fingerprint if the client
42668
+ # connects using HTTPS, HTTP/2 or HTTP/3. If not available, the key type
42669
+ # defaults to ALL.
42441
42670
  # Corresponds to the JSON property `enforceOnKeyType`
42442
42671
  # @return [String]
42443
42672
  attr_accessor :enforce_on_key_type
@@ -46940,6 +47169,18 @@ module Google
46940
47169
  # @return [String]
46941
47170
  attr_accessor :ip_cidr_range
46942
47171
 
47172
+ # Reference to the source of IP, like a PublicDelegatedPrefix (PDP) for BYOIP.
47173
+ # The PDP must be a sub-PDP in EXTERNAL_IPV6_SUBNETWORK_CREATION mode. Use one
47174
+ # of the following formats to specify a sub-PDP when creating a dual stack
47175
+ # subnetwork with external access using BYOIP: - Full resource URL, as in https:/
47176
+ # /www.googleapis.com/compute/v1/projects/projectId/regions/region /
47177
+ # publicDelegatedPrefixes/sub-pdp-name - Partial URL, as in - projects/projectId/
47178
+ # regions/region/publicDelegatedPrefixes/ sub-pdp-name - regions/region/
47179
+ # publicDelegatedPrefixes/sub-pdp-name
47180
+ # Corresponds to the JSON property `ipCollection`
47181
+ # @return [String]
47182
+ attr_accessor :ip_collection
47183
+
46943
47184
  # The access type of IPv6 address this subnet holds. It's immutable and can only
46944
47185
  # be specified during creation or the first time the subnet is updated into
46945
47186
  # IPV4_IPV6 dual stack.
@@ -46952,6 +47193,18 @@ module Google
46952
47193
  # @return [String]
46953
47194
  attr_accessor :ipv6_cidr_range
46954
47195
 
47196
+ # [Output Only] Possible endpoints of this subnetwork. It can be one of the
47197
+ # following: - VM_ONLY: The subnetwork can be used for creating instances and
47198
+ # IPv6 addresses with VM endpoint type. Such a subnetwork gets external IPv6
47199
+ # ranges from a public delegated prefix and cannot be used to create NetLb. -
47200
+ # VM_AND_FR: The subnetwork can be used for creating both VM instances and
47201
+ # Forwarding Rules. It can also be used to reserve IPv6 addresses with both VM
47202
+ # and FR endpoint types. Such a subnetwork gets its IPv6 range from Google IP
47203
+ # Pool directly.
47204
+ # Corresponds to the JSON property `ipv6GceEndpoint`
47205
+ # @return [String]
47206
+ attr_accessor :ipv6_gce_endpoint
47207
+
46955
47208
  # [Output Only] Type of the resource. Always compute#subnetwork for Subnetwork
46956
47209
  # resources.
46957
47210
  # Corresponds to the JSON property `kind`
@@ -46995,15 +47248,17 @@ module Google
46995
47248
  attr_accessor :private_ipv6_google_access
46996
47249
 
46997
47250
  # The purpose of the resource. This field can be either PRIVATE,
46998
- # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
46999
- # PRIVATE is the default purpose for user-created subnets or subnets that are
47000
- # automatically created in auto mode networks. Subnets with purpose set to
47001
- # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks
47002
- # that are reserved for Envoy-based load balancers. A subnet with purpose set to
47003
- # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
47004
- # Connect. If unspecified, the subnet purpose defaults to PRIVATE. The
47005
- # enableFlowLogs field isn't supported if the subnet purpose field is set to
47006
- # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.
47251
+ # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PEER_MIGRATION or
47252
+ # PRIVATE_SERVICE_CONNECT. PRIVATE is the default purpose for user-created
47253
+ # subnets or subnets that are automatically created in auto mode networks.
47254
+ # Subnets with purpose set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are
47255
+ # user-created subnetworks that are reserved for Envoy-based load balancers. A
47256
+ # subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services
47257
+ # using Private Service Connect. A subnet with purpose set to PEER_MIGRATION is
47258
+ # used for subnet migration from one peered VPC to another. If unspecified, the
47259
+ # subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported
47260
+ # if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or
47261
+ # REGIONAL_MANAGED_PROXY.
47007
47262
  # Corresponds to the JSON property `purpose`
47008
47263
  # @return [String]
47009
47264
  attr_accessor :purpose
@@ -47076,8 +47331,10 @@ module Google
47076
47331
  @id = args[:id] if args.key?(:id)
47077
47332
  @internal_ipv6_prefix = args[:internal_ipv6_prefix] if args.key?(:internal_ipv6_prefix)
47078
47333
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
47334
+ @ip_collection = args[:ip_collection] if args.key?(:ip_collection)
47079
47335
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
47080
47336
  @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
47337
+ @ipv6_gce_endpoint = args[:ipv6_gce_endpoint] if args.key?(:ipv6_gce_endpoint)
47081
47338
  @kind = args[:kind] if args.key?(:kind)
47082
47339
  @log_config = args[:log_config] if args.key?(:log_config)
47083
47340
  @name = args[:name] if args.key?(:name)
@@ -48552,14 +48809,14 @@ module Google
48552
48809
  # Represents a Target HTTPS Proxy resource. Google Compute Engine has two Target
48553
48810
  # HTTPS Proxy resources: * [Global](/compute/docs/reference/rest/beta/
48554
48811
  # targetHttpsProxies) * [Regional](/compute/docs/reference/rest/beta/
48555
- # regionTargetHttpsProxies) A target HTTPS proxy is a component of GCP HTTPS
48556
- # load balancers. * targetHttpProxies are used by global external Application
48557
- # Load Balancers, classic Application Load Balancers, cross-region internal
48558
- # Application Load Balancers, and Traffic Director. * regionTargetHttpProxies
48559
- # are used by regional internal Application Load Balancers and regional external
48560
- # Application Load Balancers. Forwarding rules reference a target HTTPS proxy,
48561
- # and the target proxy then references a URL map. For more information, read
48562
- # Using Target Proxies and Forwarding rule concepts.
48812
+ # regionTargetHttpsProxies) A target HTTPS proxy is a component of Google Cloud
48813
+ # HTTPS load balancers. * targetHttpProxies are used by global external
48814
+ # Application Load Balancers, classic Application Load Balancers, cross-region
48815
+ # internal Application Load Balancers, and Traffic Director. *
48816
+ # regionTargetHttpProxies are used by regional internal Application Load
48817
+ # Balancers and regional external Application Load Balancers. Forwarding rules
48818
+ # reference a target HTTPS proxy, and the target proxy then references a URL map.
48819
+ # For more information, read Using Target Proxies and Forwarding rule concepts.
48563
48820
  class TargetHttpsProxy
48564
48821
  include Google::Apis::Core::Hashable
48565
48822
 
@@ -51495,11 +51752,9 @@ module Google
51495
51752
 
51496
51753
  # defaultRouteAction takes effect when none of the hostRules match. The load
51497
51754
  # balancer performs advanced routing actions, such as URL rewrites and header
51498
- # transformations, before forwarding the request to the selected backend. If
51499
- # defaultRouteAction specifies any weightedBackendServices, defaultService must
51500
- # not be set. Conversely if defaultService is set, defaultRouteAction cannot
51501
- # contain any weightedBackendServices. Only one of defaultRouteAction or
51502
- # defaultUrlRedirect must be set. URL maps for classic Application Load
51755
+ # transformations, before forwarding the request to the selected backend. Only
51756
+ # one of defaultUrlRedirect, defaultService or defaultRouteAction.
51757
+ # weightedBackendService can be set. URL maps for classic Application Load
51503
51758
  # Balancers only support the urlRewrite action within defaultRouteAction.
51504
51759
  # defaultRouteAction has no effect when the URL map is bound to a target gRPC
51505
51760
  # proxy that has the validateForProxyless field set to true.
@@ -51510,14 +51765,10 @@ module Google
51510
51765
  # The full or partial URL of the defaultService resource to which traffic is
51511
51766
  # directed if none of the hostRules match. If defaultRouteAction is also
51512
51767
  # specified, advanced routing actions, such as URL rewrites, take effect before
51513
- # sending the request to the backend. However, if defaultService is specified,
51514
- # defaultRouteAction cannot contain any defaultRouteAction.
51515
- # weightedBackendServices. Conversely, if defaultRouteAction specifies any
51516
- # defaultRouteAction.weightedBackendServices, defaultService must not be
51517
- # specified. If defaultService is specified, then set either defaultUrlRedirect ,
51518
- # or defaultRouteAction.weightedBackendService Don't set both. defaultService
51519
- # has no effect when the URL map is bound to a target gRPC proxy that has the
51520
- # validateForProxyless field set to true.
51768
+ # sending the request to the backend. Only one of defaultUrlRedirect,
51769
+ # defaultService or defaultRouteAction.weightedBackendService can be set.
51770
+ # defaultService has no effect when the URL map is bound to a target gRPC proxy
51771
+ # that has the validateForProxyless field set to true.
51521
51772
  # Corresponds to the JSON property `defaultService`
51522
51773
  # @return [String]
51523
51774
  attr_accessor :default_service
@@ -52266,15 +52517,17 @@ module Google
52266
52517
  attr_accessor :network
52267
52518
 
52268
52519
  # The purpose of the resource. This field can be either PRIVATE,
52269
- # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
52270
- # PRIVATE is the default purpose for user-created subnets or subnets that are
52271
- # automatically created in auto mode networks. Subnets with purpose set to
52272
- # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks
52273
- # that are reserved for Envoy-based load balancers. A subnet with purpose set to
52274
- # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
52275
- # Connect. If unspecified, the subnet purpose defaults to PRIVATE. The
52276
- # enableFlowLogs field isn't supported if the subnet purpose field is set to
52277
- # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.
52520
+ # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PEER_MIGRATION or
52521
+ # PRIVATE_SERVICE_CONNECT. PRIVATE is the default purpose for user-created
52522
+ # subnets or subnets that are automatically created in auto mode networks.
52523
+ # Subnets with purpose set to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are
52524
+ # user-created subnetworks that are reserved for Envoy-based load balancers. A
52525
+ # subnet with purpose set to PRIVATE_SERVICE_CONNECT is used to publish services
52526
+ # using Private Service Connect. A subnet with purpose set to PEER_MIGRATION is
52527
+ # used for subnet migration from one peered VPC to another. If unspecified, the
52528
+ # subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't supported
52529
+ # if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or
52530
+ # REGIONAL_MANAGED_PROXY.
52278
52531
  # Corresponds to the JSON property `purpose`
52279
52532
  # @return [String]
52280
52533
  attr_accessor :purpose