google-apis-compute_beta 0.107.0 → 0.108.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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