google-apis-compute_alpha 0.139.0 → 0.141.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.
@@ -101,6 +101,209 @@ module Google
101
101
  end
102
102
  end
103
103
 
104
+ # Represents a controller for managing out-of-band access to an accelerator
105
+ # domain (e.g., NVLink Domain).
106
+ class AcceleratorPodController
107
+ include Google::Apis::Core::Hashable
108
+
109
+ # Output only. [Output Only] Creation timestamp inRFC3339 text format.
110
+ # Corresponds to the JSON property `creationTimestamp`
111
+ # @return [String]
112
+ attr_accessor :creation_timestamp
113
+
114
+ # An optional description of this resource.
115
+ # Corresponds to the JSON property `description`
116
+ # @return [String]
117
+ attr_accessor :description
118
+
119
+ # Output only. [Output Only] The unique identifier for the resource. This
120
+ # identifier is
121
+ # defined by the server.
122
+ # Corresponds to the JSON property `id`
123
+ # @return [Fixnum]
124
+ attr_accessor :id
125
+
126
+ #
127
+ # Corresponds to the JSON property `kind`
128
+ # @return [String]
129
+ attr_accessor :kind
130
+
131
+ # Map of management interfaces. Keys must be valid RFC1035 names and at most
132
+ # 63 characters long.
133
+ # Corresponds to the JSON property `managementInterfaces`
134
+ # @return [Hash<String,Google::Apis::ComputeAlpha::ManagementInterface>]
135
+ attr_accessor :management_interfaces
136
+
137
+ # Required. The name of the resource, provided by the client when initially
138
+ # creating
139
+ # the resource. The resource name must be 1-63 characters long, and comply
140
+ # withRFC1035.
141
+ # Specifically, the name must match the regular expression
142
+ # `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a
143
+ # lowercase letter, and all following characters must be a dash, lowercase
144
+ # letter, or digit, except the last character, which cannot be a dash.
145
+ # Corresponds to the JSON property `name`
146
+ # @return [String]
147
+ attr_accessor :name
148
+
149
+ # Output only. [Output Only] Server-defined URL for the resource.
150
+ # Corresponds to the JSON property `selfLink`
151
+ # @return [String]
152
+ attr_accessor :self_link
153
+
154
+ # Output only. [Output Only] Server-defined URL for the resource with the
155
+ # resource ID.
156
+ # Corresponds to the JSON property `selfLinkWithId`
157
+ # @return [String]
158
+ attr_accessor :self_link_with_id
159
+
160
+ # Required. The target accelerator domain this controller manages.
161
+ # This must be a resolvable identifier for the specific NVLink Domain or
162
+ # TPU system (e.g., a Reservation Sub-block URI).
163
+ # Example:
164
+ # "projects/my-project/reservations/my-reservation/subBlocks/subblock-1".
165
+ # Corresponds to the JSON property `target`
166
+ # @return [String]
167
+ attr_accessor :target
168
+
169
+ # Output only. [Output Only] URL of the zone where the accelerator pod
170
+ # controller resides.
171
+ # Corresponds to the JSON property `zone`
172
+ # @return [String]
173
+ attr_accessor :zone
174
+
175
+ def initialize(**args)
176
+ update!(**args)
177
+ end
178
+
179
+ # Update properties of this object
180
+ def update!(**args)
181
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
182
+ @description = args[:description] if args.key?(:description)
183
+ @id = args[:id] if args.key?(:id)
184
+ @kind = args[:kind] if args.key?(:kind)
185
+ @management_interfaces = args[:management_interfaces] if args.key?(:management_interfaces)
186
+ @name = args[:name] if args.key?(:name)
187
+ @self_link = args[:self_link] if args.key?(:self_link)
188
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
189
+ @target = args[:target] if args.key?(:target)
190
+ @zone = args[:zone] if args.key?(:zone)
191
+ end
192
+ end
193
+
194
+ #
195
+ class AcceleratorPodControllersListResponse
196
+ include Google::Apis::Core::Hashable
197
+
198
+ #
199
+ # Corresponds to the JSON property `items`
200
+ # @return [Array<Google::Apis::ComputeAlpha::AcceleratorPodController>]
201
+ attr_accessor :items
202
+
203
+ #
204
+ # Corresponds to the JSON property `kind`
205
+ # @return [String]
206
+ attr_accessor :kind
207
+
208
+ #
209
+ # Corresponds to the JSON property `nextPageToken`
210
+ # @return [String]
211
+ attr_accessor :next_page_token
212
+
213
+ #
214
+ # Corresponds to the JSON property `selfLink`
215
+ # @return [String]
216
+ attr_accessor :self_link
217
+
218
+ #
219
+ # Corresponds to the JSON property `warning`
220
+ # @return [Google::Apis::ComputeAlpha::AcceleratorPodControllersListResponse::Warning]
221
+ attr_accessor :warning
222
+
223
+ def initialize(**args)
224
+ update!(**args)
225
+ end
226
+
227
+ # Update properties of this object
228
+ def update!(**args)
229
+ @items = args[:items] if args.key?(:items)
230
+ @kind = args[:kind] if args.key?(:kind)
231
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
232
+ @self_link = args[:self_link] if args.key?(:self_link)
233
+ @warning = args[:warning] if args.key?(:warning)
234
+ end
235
+
236
+ #
237
+ class Warning
238
+ include Google::Apis::Core::Hashable
239
+
240
+ # [Output Only] A warning code, if applicable. For example, Compute
241
+ # Engine returns NO_RESULTS_ON_PAGE if there
242
+ # are no results in the response.
243
+ # Corresponds to the JSON property `code`
244
+ # @return [String]
245
+ attr_accessor :code
246
+
247
+ # [Output Only] Metadata about this warning in key:
248
+ # value format. For example:
249
+ # "data": [
250
+ # `
251
+ # "key": "scope",
252
+ # "value": "zones/us-east1-d"
253
+ # `
254
+ # Corresponds to the JSON property `data`
255
+ # @return [Array<Google::Apis::ComputeAlpha::AcceleratorPodControllersListResponse::Warning::Datum>]
256
+ attr_accessor :data
257
+
258
+ # [Output Only] A human-readable description of the warning code.
259
+ # Corresponds to the JSON property `message`
260
+ # @return [String]
261
+ attr_accessor :message
262
+
263
+ def initialize(**args)
264
+ update!(**args)
265
+ end
266
+
267
+ # Update properties of this object
268
+ def update!(**args)
269
+ @code = args[:code] if args.key?(:code)
270
+ @data = args[:data] if args.key?(:data)
271
+ @message = args[:message] if args.key?(:message)
272
+ end
273
+
274
+ #
275
+ class Datum
276
+ include Google::Apis::Core::Hashable
277
+
278
+ # [Output Only] A key that provides more detail on the warning being
279
+ # returned. For example, for warnings where there are no results in a list
280
+ # request for a particular zone, this key might be scope and
281
+ # the key value might be the zone name. Other examples might be a key
282
+ # indicating a deprecated resource and a suggested replacement, or a
283
+ # warning about invalid network settings (for example, if an instance
284
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
285
+ # Corresponds to the JSON property `key`
286
+ # @return [String]
287
+ attr_accessor :key
288
+
289
+ # [Output Only] A warning data value corresponding to the key.
290
+ # Corresponds to the JSON property `value`
291
+ # @return [String]
292
+ attr_accessor :value
293
+
294
+ def initialize(**args)
295
+ update!(**args)
296
+ end
297
+
298
+ # Update properties of this object
299
+ def update!(**args)
300
+ @key = args[:key] if args.key?(:key)
301
+ @value = args[:value] if args.key?(:value)
302
+ end
303
+ end
304
+ end
305
+ end
306
+
104
307
  # Info for accelerator topologies within a densely packed reservation.
105
308
  class AcceleratorTopologiesInfo
106
309
  include Google::Apis::Core::Hashable
@@ -771,21 +974,30 @@ module Google
771
974
  # @return [Fixnum]
772
975
  attr_accessor :id
773
976
 
774
- # Reference to the source of external IPv4 addresses,
775
- # like a PublicDelegatedPrefix (PDP) for BYOIP.
776
- # The PDP must support enhanced IPv4 allocations.
777
- # Use one of the following formats to specify a PDP when reserving an
778
- # external IPv4 address using BYOIP.
977
+ # Reference to the source of IP addresses.
978
+ # It supports the following cases:
779
979
  #
780
980
  # -
781
- # Full resource URL, as inhttps://www.googleapis.com/compute/v1/projects/
782
- # projectId/regions/region/publicDelegatedPrefixes/pdp-name
981
+ # Case 1: PublicDelegatedPrefix (PDP) for BYOIP external IPv4
982
+ # addresses. The PDP must support enhanced IPv4 allocations.
783
983
  # -
784
- # Partial URL, as in
785
- #
984
+ # Case 2: Internal Range for global internal addresses.
985
+ # Use one of the following formats to specify the resource:
986
+ # For a Public Delegated Prefix:
786
987
  #
988
+ # -
989
+ # Full resource URL:https://www.googleapis.com/compute/v1/projects/projectId/
990
+ # regions/region/publicDelegatedPrefixes/pdp
991
+ # - Partial URL:
787
992
  # - projects/projectId/regions/region/publicDelegatedPrefixes/pdp-name
788
993
  # - regions/region/publicDelegatedPrefixes/pdp-name
994
+ #
995
+ # For an Internal Range:
996
+ #
997
+ # - Full URL:https://networkconnectivity.googleapis.com/v1/projects/project/
998
+ # locations/global/internalRanges/internal-range
999
+ # - Partial URL:projects/project/locations/global/internalRanges/internal-
1000
+ # range
789
1001
  # Corresponds to the JSON property `ipCollection`
790
1002
  # @return [String]
791
1003
  attr_accessor :ip_collection
@@ -1401,6 +1613,21 @@ module Google
1401
1613
  class AliasIpRange
1402
1614
  include Google::Apis::Core::Hashable
1403
1615
 
1616
+ # Identifies the candidate subnetwork range names for the alias
1617
+ # IPs to be allocated from. When it is set, the IP would be allocated from
1618
+ # any subnetwork range defined here if the IPs are available.
1619
+ # Only one of subnetwork_range_name or candidate_subnetwork_range_names
1620
+ # should be set.
1621
+ # Corresponds to the JSON property `candidateSubnetworkRangeNames`
1622
+ # @return [Array<String>]
1623
+ attr_accessor :candidate_subnetwork_range_names
1624
+
1625
+ # Output only. [Output Only] The subnetwork range name where the IP is allocated.
1626
+ # It will be set to the subnetwork range where the IP is allocated only.
1627
+ # Corresponds to the JSON property `effectiveSubnetworkRangeName`
1628
+ # @return [String]
1629
+ attr_accessor :effective_subnetwork_range_name
1630
+
1404
1631
  # The IP alias ranges to allocate for this interface. This IP CIDR range
1405
1632
  # must belong to the specified subnetwork and cannot contain IP addresses
1406
1633
  # reserved by system or used by other network interfaces. This range may be
@@ -1422,6 +1649,8 @@ module Google
1422
1649
 
1423
1650
  # Update properties of this object
1424
1651
  def update!(**args)
1652
+ @candidate_subnetwork_range_names = args[:candidate_subnetwork_range_names] if args.key?(:candidate_subnetwork_range_names)
1653
+ @effective_subnetwork_range_name = args[:effective_subnetwork_range_name] if args.key?(:effective_subnetwork_range_name)
1425
1654
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
1426
1655
  @subnetwork_range_name = args[:subnetwork_range_name] if args.key?(:subnetwork_range_name)
1427
1656
  end
@@ -2413,6 +2642,29 @@ module Google
2413
2642
  end
2414
2643
  end
2415
2644
 
2645
+ # Authentication configuration for the management interface, typically using
2646
+ # mTLS.
2647
+ class AuthenticationConfig
2648
+ include Google::Apis::Core::Hashable
2649
+
2650
+ # Required. Resource name of the Cloud Certificate Manager TrustConfig used to
2651
+ # validate
2652
+ # client certificates for mTLS.
2653
+ # Format: projects/`project`/locations/`location`/trustConfigs/`trust_config`
2654
+ # Corresponds to the JSON property `trustConfig`
2655
+ # @return [String]
2656
+ attr_accessor :trust_config
2657
+
2658
+ def initialize(**args)
2659
+ update!(**args)
2660
+ end
2661
+
2662
+ # Update properties of this object
2663
+ def update!(**args)
2664
+ @trust_config = args[:trust_config] if args.key?(:trust_config)
2665
+ end
2666
+ end
2667
+
2416
2668
  # [Deprecated] The authentication settings for the backend service.
2417
2669
  # The authentication settings for the backend service.
2418
2670
  class AuthenticationPolicy
@@ -8747,22 +8999,25 @@ module Google
8747
8999
  class CapacityHistoryResponse
8748
9000
  include Google::Apis::Core::Hashable
8749
9001
 
8750
- #
9002
+ # Output only. The location (region or zone) for which the capacity history is
9003
+ # returned.
9004
+ # It is returned as a URL - For example,https://www.googleapis.com/compute/v1/
9005
+ # projects/project/zones/zone.
8751
9006
  # Corresponds to the JSON property `location`
8752
9007
  # @return [String]
8753
9008
  attr_accessor :location
8754
9009
 
8755
- #
9010
+ # The machine type for which the capacity history is returned.
8756
9011
  # Corresponds to the JSON property `machineType`
8757
9012
  # @return [String]
8758
9013
  attr_accessor :machine_type
8759
9014
 
8760
- #
9015
+ # The preemption history for the requested machine type and location.
8761
9016
  # Corresponds to the JSON property `preemptionHistory`
8762
9017
  # @return [Array<Google::Apis::ComputeAlpha::CapacityHistoryResponsePreemptionRecord>]
8763
9018
  attr_accessor :preemption_history
8764
9019
 
8765
- #
9020
+ # The price history for the requested machine type and location.
8766
9021
  # Corresponds to the JSON property `priceHistory`
8767
9022
  # @return [Array<Google::Apis::ComputeAlpha::CapacityHistoryResponsePriceRecord>]
8768
9023
  attr_accessor :price_history
@@ -8780,7 +9035,7 @@ module Google
8780
9035
  end
8781
9036
  end
8782
9037
 
8783
- #
9038
+ # A record of Spot VM preemption history.
8784
9039
  class CapacityHistoryResponsePreemptionRecord
8785
9040
  include Google::Apis::Core::Hashable
8786
9041
 
@@ -8793,7 +9048,10 @@ module Google
8793
9048
  # @return [Google::Apis::ComputeAlpha::Interval]
8794
9049
  attr_accessor :interval
8795
9050
 
8796
- #
9051
+ # The preemption rate during the interval, representing the fraction of
9052
+ # Spot VMs that were preempted. Range: 0.0 to 1.0. Preemption rate is
9053
+ # calculated as (total preempted Spots) / (total Spots that stopped
9054
+ # running).
8797
9055
  # Corresponds to the JSON property `preemptionRate`
8798
9056
  # @return [Float]
8799
9057
  attr_accessor :preemption_rate
@@ -8809,7 +9067,7 @@ module Google
8809
9067
  end
8810
9068
  end
8811
9069
 
8812
- #
9070
+ # A record of price history.
8813
9071
  class CapacityHistoryResponsePriceRecord
8814
9072
  include Google::Apis::Core::Hashable
8815
9073
 
@@ -11073,6 +11331,358 @@ module Google
11073
11331
  end
11074
11332
  end
11075
11333
 
11334
+ # A standalone, regional API resource that encapsulates a set of user-defined
11335
+ # DHCP configurations.
11336
+ class DhcpOptionsConfig
11337
+ include Google::Apis::Core::Hashable
11338
+
11339
+ # Mapping of user-defined keys to DhcpOptionsConfig to Network associations.
11340
+ # Corresponds to the JSON property `associations`
11341
+ # @return [Hash<String,Google::Apis::ComputeAlpha::DhcpOptionsConfigAssociation>]
11342
+ attr_accessor :associations
11343
+
11344
+ # The file path and name of the boot image/file on the TFTP server that the
11345
+ # client VM guest OS should download and execute during network boot. Used
11346
+ # when the standard DHCP header 'file' field is overloaded. Corresponds to
11347
+ # DHCPv4 Option 67.
11348
+ # Corresponds to the JSON property `bootFileIpv4Name`
11349
+ # @return [String]
11350
+ attr_accessor :boot_file_ipv4_name
11351
+
11352
+ # A list of UTF-8 encoded parameter strings to be passed as arguments to the
11353
+ # bootloader program or OS kernel after downloading the boot file.
11354
+ # Corresponds to DHCPv6 Option 60.
11355
+ # Corresponds to the JSON property `bootFileIpv6Parameters`
11356
+ # @return [Array<String>]
11357
+ attr_accessor :boot_file_ipv6_parameters
11358
+
11359
+ # The Uniform Resource Locator (URL) specifying the protocol, server address,
11360
+ # and file path of the boot file that the client VM guest OS should download
11361
+ # and execute for network boot (e.g., 'tftp://[2001:db8::1]/bootx64.efi' or
11362
+ # 'http://[2001:db8::1]/boot.img'). Corresponds to DHCPv6 Option 59.
11363
+ # Corresponds to the JSON property `bootFileIpv6Url`
11364
+ # @return [String]
11365
+ attr_accessor :boot_file_ipv6_url
11366
+
11367
+ # Output only. [Output Only] Creation timestamp inRFC3339
11368
+ # text format.
11369
+ # Corresponds to the JSON property `creationTimestamp`
11370
+ # @return [String]
11371
+ attr_accessor :creation_timestamp
11372
+
11373
+ # An optional description of this resource. Provide this property when you
11374
+ # create the resource.
11375
+ # Corresponds to the JSON property `description`
11376
+ # @return [String]
11377
+ attr_accessor :description
11378
+
11379
+ # An ordered list of domain suffixes (search paths) that the client VM guest
11380
+ # OS should append to resolve hostnames that are not fully qualified. Applies
11381
+ # to both DHCPv4 Option 119 and DHCPv6 Option 24.
11382
+ # Corresponds to the JSON property `dnsSearchPaths`
11383
+ # @return [Array<String>]
11384
+ attr_accessor :dns_search_paths
11385
+
11386
+ # An ordered list of IPv4 addresses of DNS recursive name servers available
11387
+ # to the client VM guest OS, specified in order of preference. Corresponds to
11388
+ # DHCPv4 Option 6.
11389
+ # Corresponds to the JSON property `dnsServerIpv4Addresses`
11390
+ # @return [Array<String>]
11391
+ attr_accessor :dns_server_ipv4_addresses
11392
+
11393
+ # An ordered list of IPv6 addresses of DNS recursive name servers available
11394
+ # to the client VM guest OS, specified in order of preference. Corresponds to
11395
+ # DHCPv6 Option 23.
11396
+ # Corresponds to the JSON property `dnsServerIpv6Addresses`
11397
+ # @return [Array<String>]
11398
+ attr_accessor :dns_server_ipv6_addresses
11399
+
11400
+ # The domain name that the client VM guest OS should use when resolving
11401
+ # hostnames via DNS (e.g., 'example.com'). It defines the default domain
11402
+ # suffix for the client. Corresponds to DHCPv4 Option 15.
11403
+ # Corresponds to the JSON property `domainName`
11404
+ # @return [String]
11405
+ attr_accessor :domain_name
11406
+
11407
+ # Output only. [Output Only] The unique identifier for the resource type. The
11408
+ # server
11409
+ # generates this identifier.
11410
+ # Corresponds to the JSON property `id`
11411
+ # @return [Fixnum]
11412
+ attr_accessor :id
11413
+
11414
+ # Output only. [Output Only] Type of the resource. Alwayscompute#
11415
+ # dhcpOptionsConfig for dhcp options configs.
11416
+ # Corresponds to the JSON property `kind`
11417
+ # @return [String]
11418
+ attr_accessor :kind
11419
+
11420
+ # The duration, in seconds, of the IPv4 address lease offered by the DHCP
11421
+ # server to the client VM guest OS. Corresponds to DHCPv4 Option 51.
11422
+ # Corresponds to the JSON property `leaseTimeSec`
11423
+ # @return [Fixnum]
11424
+ attr_accessor :lease_time_sec
11425
+
11426
+ # Name of the resource. Provided by the client when the resource is created.
11427
+ # The name must be 1-63 characters long, and comply withRFC1035.
11428
+ # Specifically, the name must be 1-63 characters long and match the regular
11429
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
11430
+ # character must be a lowercase letter, and all following characters must
11431
+ # be a dash, lowercase letter, or digit, except the last character, which
11432
+ # cannot be a dash.
11433
+ # Corresponds to the JSON property `name`
11434
+ # @return [String]
11435
+ attr_accessor :name
11436
+
11437
+ # An ordered list of IPv4 addresses of Network Time Protocol (NTP) servers
11438
+ # available to the client VM guest OS for system clock synchronization,
11439
+ # listed in order of preference. Corresponds to DHCPv4 Option 42.
11440
+ # Corresponds to the JSON property `ntpServerIpv4Addresses`
11441
+ # @return [Array<String>]
11442
+ attr_accessor :ntp_server_ipv4_addresses
11443
+
11444
+ # An ordered list of IPv6 addresses of Network Time Protocol (NTP) servers
11445
+ # available to the client VM guest OS for system clock synchronization.
11446
+ # Corresponds to DHCPv6 Option 56.
11447
+ # Corresponds to the JSON property `ntpServerIpv6Addresses`
11448
+ # @return [Array<String>]
11449
+ attr_accessor :ntp_server_ipv6_addresses
11450
+
11451
+ # Output only. [Output Only] URL of the region where the resource resides.
11452
+ # Corresponds to the JSON property `region`
11453
+ # @return [String]
11454
+ attr_accessor :region
11455
+
11456
+ # Output only. [Output Only] Server-defined URL for the resource.
11457
+ # Corresponds to the JSON property `selfLink`
11458
+ # @return [String]
11459
+ attr_accessor :self_link
11460
+
11461
+ # An ordered list of one or more IPv4 addresses of TFTP servers. Provides
11462
+ # server redundancy and failover support, and is generally prioritized by
11463
+ # clients over the single hostname specified in Option 66. Corresponds to
11464
+ # DHCPv4 Option 150.
11465
+ # Corresponds to the JSON property `tftpServerIpv4Addresses`
11466
+ # @return [Array<String>]
11467
+ attr_accessor :tftp_server_ipv4_addresses
11468
+
11469
+ # The hostname or IP address of the Trivial File Transfer Protocol (TFTP)
11470
+ # server from which the client VM guest OS can download boot files. Typically
11471
+ # used in network booting (PXE) when the standard DHCP header 'sname' field
11472
+ # is overloaded. Corresponds to DHCPv4 Option 66.
11473
+ # Corresponds to the JSON property `tftpServerIpv4Name`
11474
+ # @return [String]
11475
+ attr_accessor :tftp_server_ipv4_name
11476
+
11477
+ def initialize(**args)
11478
+ update!(**args)
11479
+ end
11480
+
11481
+ # Update properties of this object
11482
+ def update!(**args)
11483
+ @associations = args[:associations] if args.key?(:associations)
11484
+ @boot_file_ipv4_name = args[:boot_file_ipv4_name] if args.key?(:boot_file_ipv4_name)
11485
+ @boot_file_ipv6_parameters = args[:boot_file_ipv6_parameters] if args.key?(:boot_file_ipv6_parameters)
11486
+ @boot_file_ipv6_url = args[:boot_file_ipv6_url] if args.key?(:boot_file_ipv6_url)
11487
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
11488
+ @description = args[:description] if args.key?(:description)
11489
+ @dns_search_paths = args[:dns_search_paths] if args.key?(:dns_search_paths)
11490
+ @dns_server_ipv4_addresses = args[:dns_server_ipv4_addresses] if args.key?(:dns_server_ipv4_addresses)
11491
+ @dns_server_ipv6_addresses = args[:dns_server_ipv6_addresses] if args.key?(:dns_server_ipv6_addresses)
11492
+ @domain_name = args[:domain_name] if args.key?(:domain_name)
11493
+ @id = args[:id] if args.key?(:id)
11494
+ @kind = args[:kind] if args.key?(:kind)
11495
+ @lease_time_sec = args[:lease_time_sec] if args.key?(:lease_time_sec)
11496
+ @name = args[:name] if args.key?(:name)
11497
+ @ntp_server_ipv4_addresses = args[:ntp_server_ipv4_addresses] if args.key?(:ntp_server_ipv4_addresses)
11498
+ @ntp_server_ipv6_addresses = args[:ntp_server_ipv6_addresses] if args.key?(:ntp_server_ipv6_addresses)
11499
+ @region = args[:region] if args.key?(:region)
11500
+ @self_link = args[:self_link] if args.key?(:self_link)
11501
+ @tftp_server_ipv4_addresses = args[:tftp_server_ipv4_addresses] if args.key?(:tftp_server_ipv4_addresses)
11502
+ @tftp_server_ipv4_name = args[:tftp_server_ipv4_name] if args.key?(:tftp_server_ipv4_name)
11503
+ end
11504
+ end
11505
+
11506
+ # Association represents the relationship between a DHCP options config and a
11507
+ # network. Association represents the relationship between a DHCP options
11508
+ # config and a network.
11509
+ class DhcpOptionsConfigAssociation
11510
+ include Google::Apis::Core::Hashable
11511
+
11512
+ # Required. The target network this DHCP option is attached to.
11513
+ # You can specify this as a full or partial URL. For example, the following
11514
+ # are all valid URLs:
11515
+ #
11516
+ #
11517
+ # - https://www.googleapis.com/compute/v1/projects/project/global/networks/
11518
+ # network
11519
+ #
11520
+ # - projects/project/global/networks/network
11521
+ # Corresponds to the JSON property `network`
11522
+ # @return [String]
11523
+ attr_accessor :network
11524
+
11525
+ # Output only. [Output Only] The server-defined ID of the associated Network.
11526
+ # Corresponds to the JSON property `networkId`
11527
+ # @return [Fixnum]
11528
+ attr_accessor :network_id
11529
+
11530
+ # Output only. [Output Only] State of the association.
11531
+ # Corresponds to the JSON property `state`
11532
+ # @return [String]
11533
+ attr_accessor :state
11534
+
11535
+ def initialize(**args)
11536
+ update!(**args)
11537
+ end
11538
+
11539
+ # Update properties of this object
11540
+ def update!(**args)
11541
+ @network = args[:network] if args.key?(:network)
11542
+ @network_id = args[:network_id] if args.key?(:network_id)
11543
+ @state = args[:state] if args.key?(:state)
11544
+ end
11545
+ end
11546
+
11547
+ #
11548
+ class DhcpOptionsConfigList
11549
+ include Google::Apis::Core::Hashable
11550
+
11551
+ # Server-defined ETag for optimistic concurrency control.
11552
+ # Corresponds to the JSON property `etag`
11553
+ # @return [String]
11554
+ attr_accessor :etag
11555
+
11556
+ # [Output Only] Unique identifier for the resource; defined by the server.
11557
+ # Corresponds to the JSON property `id`
11558
+ # @return [String]
11559
+ attr_accessor :id
11560
+
11561
+ # A list of DhcpOptionsConfig resources.
11562
+ # Corresponds to the JSON property `items`
11563
+ # @return [Array<Google::Apis::ComputeAlpha::DhcpOptionsConfig>]
11564
+ attr_accessor :items
11565
+
11566
+ # Output only. [Output Only] Type of the resource. Alwayscompute#
11567
+ # dhcpOptionsConfigList for a list of dhcp options
11568
+ # configs.
11569
+ # Corresponds to the JSON property `kind`
11570
+ # @return [String]
11571
+ attr_accessor :kind
11572
+
11573
+ # [Output Only] This token allows you to get the next page of results for
11574
+ # list requests. If the number of results is larger thanmaxResults, use the
11575
+ # nextPageToken as a value for
11576
+ # the query parameter pageToken in the next list request.
11577
+ # Subsequent list requests will have their own nextPageToken to
11578
+ # continue paging through the results.
11579
+ # Corresponds to the JSON property `nextPageToken`
11580
+ # @return [String]
11581
+ attr_accessor :next_page_token
11582
+
11583
+ # [Output Only] Server-defined URL for this resource.
11584
+ # Corresponds to the JSON property `selfLink`
11585
+ # @return [String]
11586
+ attr_accessor :self_link
11587
+
11588
+ # Output only. [Output Only] Unreachable resources.
11589
+ # end_interface: MixerListResponseWithEtagBuilder
11590
+ # Corresponds to the JSON property `unreachables`
11591
+ # @return [Array<String>]
11592
+ attr_accessor :unreachables
11593
+
11594
+ # [Output Only] Informational warning message.
11595
+ # Corresponds to the JSON property `warning`
11596
+ # @return [Google::Apis::ComputeAlpha::DhcpOptionsConfigList::Warning]
11597
+ attr_accessor :warning
11598
+
11599
+ def initialize(**args)
11600
+ update!(**args)
11601
+ end
11602
+
11603
+ # Update properties of this object
11604
+ def update!(**args)
11605
+ @etag = args[:etag] if args.key?(:etag)
11606
+ @id = args[:id] if args.key?(:id)
11607
+ @items = args[:items] if args.key?(:items)
11608
+ @kind = args[:kind] if args.key?(:kind)
11609
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
11610
+ @self_link = args[:self_link] if args.key?(:self_link)
11611
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
11612
+ @warning = args[:warning] if args.key?(:warning)
11613
+ end
11614
+
11615
+ # [Output Only] Informational warning message.
11616
+ class Warning
11617
+ include Google::Apis::Core::Hashable
11618
+
11619
+ # [Output Only] A warning code, if applicable. For example, Compute
11620
+ # Engine returns NO_RESULTS_ON_PAGE if there
11621
+ # are no results in the response.
11622
+ # Corresponds to the JSON property `code`
11623
+ # @return [String]
11624
+ attr_accessor :code
11625
+
11626
+ # [Output Only] Metadata about this warning in key:
11627
+ # value format. For example:
11628
+ # "data": [
11629
+ # `
11630
+ # "key": "scope",
11631
+ # "value": "zones/us-east1-d"
11632
+ # `
11633
+ # Corresponds to the JSON property `data`
11634
+ # @return [Array<Google::Apis::ComputeAlpha::DhcpOptionsConfigList::Warning::Datum>]
11635
+ attr_accessor :data
11636
+
11637
+ # [Output Only] A human-readable description of the warning code.
11638
+ # Corresponds to the JSON property `message`
11639
+ # @return [String]
11640
+ attr_accessor :message
11641
+
11642
+ def initialize(**args)
11643
+ update!(**args)
11644
+ end
11645
+
11646
+ # Update properties of this object
11647
+ def update!(**args)
11648
+ @code = args[:code] if args.key?(:code)
11649
+ @data = args[:data] if args.key?(:data)
11650
+ @message = args[:message] if args.key?(:message)
11651
+ end
11652
+
11653
+ #
11654
+ class Datum
11655
+ include Google::Apis::Core::Hashable
11656
+
11657
+ # [Output Only] A key that provides more detail on the warning being
11658
+ # returned. For example, for warnings where there are no results in a list
11659
+ # request for a particular zone, this key might be scope and
11660
+ # the key value might be the zone name. Other examples might be a key
11661
+ # indicating a deprecated resource and a suggested replacement, or a
11662
+ # warning about invalid network settings (for example, if an instance
11663
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
11664
+ # Corresponds to the JSON property `key`
11665
+ # @return [String]
11666
+ attr_accessor :key
11667
+
11668
+ # [Output Only] A warning data value corresponding to the key.
11669
+ # Corresponds to the JSON property `value`
11670
+ # @return [String]
11671
+ attr_accessor :value
11672
+
11673
+ def initialize(**args)
11674
+ update!(**args)
11675
+ end
11676
+
11677
+ # Update properties of this object
11678
+ def update!(**args)
11679
+ @key = args[:key] if args.key?(:key)
11680
+ @value = args[:value] if args.key?(:value)
11681
+ end
11682
+ end
11683
+ end
11684
+ end
11685
+
11076
11686
  # Represents a Persistent Disk resource.
11077
11687
  # Google Compute Engine has two Disk resources:
11078
11688
  # * [Zonal](/compute/docs/reference/rest/alpha/disks)
@@ -15069,7 +15679,9 @@ module Google
15069
15679
 
15070
15680
  # The Action to perform when the client connection triggers the rule.
15071
15681
  # Valid actions for firewall rules are: "allow", "deny",
15072
- # "apply_security_profile_group" and "goto_next".
15682
+ # "apply_security_profile_group" and "goto_next" (
15683
+ # "apply_security_profile_group" can be specified only for global
15684
+ # network firewall policies or hierarchical firewall policies).
15073
15685
  # Valid actions for packet mirroring rules are: "mirror", "do_not_mirror"
15074
15686
  # and "goto_next".
15075
15687
  # Corresponds to the JSON property `action`
@@ -15138,12 +15750,13 @@ module Google
15138
15750
  # @return [Fixnum]
15139
15751
  attr_accessor :rule_tuple_count
15140
15752
 
15141
- # A fully-qualified URL of a SecurityProfile resource instance.
15753
+ # A fully-qualified URL of a SecurityProfileGroup resource instance.
15142
15754
  # Example:
15143
15755
  # https://networksecurity.googleapis.com/v1/projects/`project`/locations/`
15144
15756
  # location`/securityProfileGroups/my-security-profile-group
15145
15757
  # Must be specified if action is one of 'apply_security_profile_group' or
15146
- # 'mirror'. Cannot be specified for other actions.
15758
+ # 'mirror'. Cannot be specified for other actions. Can be specified only
15759
+ # for global network firewall policies or hierarchical firewall policies.
15147
15760
  # Corresponds to the JSON property `securityProfileGroup`
15148
15761
  # @return [String]
15149
15762
  attr_accessor :security_profile_group
@@ -15437,6 +16050,27 @@ module Google
15437
16050
  end
15438
16051
  end
15439
16052
 
16053
+ # Metadata for FirewallPolicyRule operations.
16054
+ class FirewallPolicyRuleOperationMetadata
16055
+ include Google::Apis::Core::Hashable
16056
+
16057
+ # Output only. [Output Only] The priority allocated for the firewall policy rule
16058
+ # if query
16059
+ # parameters specified minPriority/maxPriority.
16060
+ # Corresponds to the JSON property `allocatedPriority`
16061
+ # @return [Fixnum]
16062
+ attr_accessor :allocated_priority
16063
+
16064
+ def initialize(**args)
16065
+ update!(**args)
16066
+ end
16067
+
16068
+ # Update properties of this object
16069
+ def update!(**args)
16070
+ @allocated_priority = args[:allocated_priority] if args.key?(:allocated_priority)
16071
+ end
16072
+ end
16073
+
15440
16074
  #
15441
16075
  class FirewallPolicyRuleSecureTag
15442
16076
  include Google::Apis::Core::Hashable
@@ -16722,6 +17356,13 @@ module Google
16722
17356
  attr_accessor :auto_delete_auto_created_reservations
16723
17357
  alias_method :auto_delete_auto_created_reservations?, :auto_delete_auto_created_reservations
16724
17358
 
17359
+ # Full or partial URL of an existing future reservation to indicate
17360
+ # intent for reserving capacity in the same cluster as the colocation
17361
+ # resource.
17362
+ # Corresponds to the JSON property `colocationResource`
17363
+ # @return [String]
17364
+ attr_accessor :colocation_resource
17365
+
16725
17366
  # If not present, then FR will not deliver a new commitment or update an
16726
17367
  # existing commitment.
16727
17368
  # Corresponds to the JSON property `commitmentInfo`
@@ -16820,6 +17461,13 @@ module Google
16820
17461
  # @return [String]
16821
17462
  attr_accessor :reservation_name
16822
17463
 
17464
+ # Name of the resource intended to be delivered. Name should conform to
17465
+ # RFC1035. This will be the name of storage pool or Exapool for persistent
17466
+ # disk FRs.
17467
+ # Corresponds to the JSON property `resourceName`
17468
+ # @return [String]
17469
+ attr_accessor :resource_name
17470
+
16823
17471
  # Maintenance information for this reservation
16824
17472
  # Corresponds to the JSON property `schedulingType`
16825
17473
  # @return [String]
@@ -16861,6 +17509,11 @@ module Google
16861
17509
  # @return [Google::Apis::ComputeAlpha::FutureReservationStatus]
16862
17510
  attr_accessor :status
16863
17511
 
17512
+ # Storage pool properties for the future reservation.
17513
+ # Corresponds to the JSON property `storagePoolProperties`
17514
+ # @return [Google::Apis::ComputeAlpha::FutureReservationStoragePoolProperties]
17515
+ attr_accessor :storage_pool_properties
17516
+
16864
17517
  # Time window for this Future Reservation.
16865
17518
  # Corresponds to the JSON property `timeWindow`
16866
17519
  # @return [Google::Apis::ComputeAlpha::FutureReservationTimeWindow]
@@ -16883,6 +17536,7 @@ module Google
16883
17536
  @auto_created_reservations_delete_time = args[:auto_created_reservations_delete_time] if args.key?(:auto_created_reservations_delete_time)
16884
17537
  @auto_created_reservations_duration = args[:auto_created_reservations_duration] if args.key?(:auto_created_reservations_duration)
16885
17538
  @auto_delete_auto_created_reservations = args[:auto_delete_auto_created_reservations] if args.key?(:auto_delete_auto_created_reservations)
17539
+ @colocation_resource = args[:colocation_resource] if args.key?(:colocation_resource)
16886
17540
  @commitment_info = args[:commitment_info] if args.key?(:commitment_info)
16887
17541
  @confidential_compute_type = args[:confidential_compute_type] if args.key?(:confidential_compute_type)
16888
17542
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
@@ -16898,6 +17552,7 @@ module Google
16898
17552
  @protection_tier = args[:protection_tier] if args.key?(:protection_tier)
16899
17553
  @reservation_mode = args[:reservation_mode] if args.key?(:reservation_mode)
16900
17554
  @reservation_name = args[:reservation_name] if args.key?(:reservation_name)
17555
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
16901
17556
  @scheduling_type = args[:scheduling_type] if args.key?(:scheduling_type)
16902
17557
  @self_link = args[:self_link] if args.key?(:self_link)
16903
17558
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -16905,6 +17560,7 @@ module Google
16905
17560
  @specific_reservation_required = args[:specific_reservation_required] if args.key?(:specific_reservation_required)
16906
17561
  @specific_sku_properties = args[:specific_sku_properties] if args.key?(:specific_sku_properties)
16907
17562
  @status = args[:status] if args.key?(:status)
17563
+ @storage_pool_properties = args[:storage_pool_properties] if args.key?(:storage_pool_properties)
16908
17564
  @time_window = args[:time_window] if args.key?(:time_window)
16909
17565
  @zone = args[:zone] if args.key?(:zone)
16910
17566
  end
@@ -17020,6 +17676,11 @@ module Google
17020
17676
  # @return [Array<String>]
17021
17677
  attr_accessor :auto_created_reservations
17022
17678
 
17679
+ # Exapool provisioned capacities for each SKU type
17680
+ # Corresponds to the JSON property `exapoolProvisionedCapacityGb`
17681
+ # @return [Google::Apis::ComputeAlpha::StoragePoolExapoolProvisionedCapacityGb]
17682
+ attr_accessor :exapool_provisioned_capacity_gb
17683
+
17023
17684
  # [Output Only] Represents the existing matching usage for the future
17024
17685
  # reservation.
17025
17686
  # Corresponds to the JSON property `existingMatchingUsageInfo`
@@ -17059,6 +17720,11 @@ module Google
17059
17720
  # @return [Google::Apis::ComputeAlpha::FutureReservationStatusSpecificSkuProperties]
17060
17721
  attr_accessor :specific_sku_properties
17061
17722
 
17723
+ # Storage pool provisioned capacities for each SKU type.
17724
+ # Corresponds to the JSON property `storagePoolProvisionedCapacity`
17725
+ # @return [Google::Apis::ComputeAlpha::FutureReservationStoragePoolProvisionedCapacity]
17726
+ attr_accessor :storage_pool_provisioned_capacity
17727
+
17062
17728
  def initialize(**args)
17063
17729
  update!(**args)
17064
17730
  end
@@ -17067,12 +17733,14 @@ module Google
17067
17733
  def update!(**args)
17068
17734
  @amendment_status = args[:amendment_status] if args.key?(:amendment_status)
17069
17735
  @auto_created_reservations = args[:auto_created_reservations] if args.key?(:auto_created_reservations)
17736
+ @exapool_provisioned_capacity_gb = args[:exapool_provisioned_capacity_gb] if args.key?(:exapool_provisioned_capacity_gb)
17070
17737
  @existing_matching_usage_info = args[:existing_matching_usage_info] if args.key?(:existing_matching_usage_info)
17071
17738
  @fulfilled_count = args[:fulfilled_count] if args.key?(:fulfilled_count)
17072
17739
  @last_known_good_state = args[:last_known_good_state] if args.key?(:last_known_good_state)
17073
17740
  @lock_time = args[:lock_time] if args.key?(:lock_time)
17074
17741
  @procurement_status = args[:procurement_status] if args.key?(:procurement_status)
17075
17742
  @specific_sku_properties = args[:specific_sku_properties] if args.key?(:specific_sku_properties)
17743
+ @storage_pool_provisioned_capacity = args[:storage_pool_provisioned_capacity] if args.key?(:storage_pool_provisioned_capacity)
17076
17744
  end
17077
17745
  end
17078
17746
 
@@ -17211,6 +17879,70 @@ module Google
17211
17879
  end
17212
17880
  end
17213
17881
 
17882
+ # Storage pool properties for the future reservation.
17883
+ class FutureReservationStoragePoolProperties
17884
+ include Google::Apis::Core::Hashable
17885
+
17886
+ # Exapool provisioned capacities for each SKU type
17887
+ # Corresponds to the JSON property `requestedExapoolProvisionedCapacityGb`
17888
+ # @return [Google::Apis::ComputeAlpha::StoragePoolExapoolProvisionedCapacityGb]
17889
+ attr_accessor :requested_exapool_provisioned_capacity_gb
17890
+
17891
+ # Storage pool provisioned capacities for each SKU type.
17892
+ # Corresponds to the JSON property `requestedStoragePoolProvisionedCapacity`
17893
+ # @return [Google::Apis::ComputeAlpha::FutureReservationStoragePoolProvisionedCapacity]
17894
+ attr_accessor :requested_storage_pool_provisioned_capacity
17895
+
17896
+ # Type of the storage pool.
17897
+ # Corresponds to the JSON property `storagePoolType`
17898
+ # @return [String]
17899
+ attr_accessor :storage_pool_type
17900
+
17901
+ def initialize(**args)
17902
+ update!(**args)
17903
+ end
17904
+
17905
+ # Update properties of this object
17906
+ def update!(**args)
17907
+ @requested_exapool_provisioned_capacity_gb = args[:requested_exapool_provisioned_capacity_gb] if args.key?(:requested_exapool_provisioned_capacity_gb)
17908
+ @requested_storage_pool_provisioned_capacity = args[:requested_storage_pool_provisioned_capacity] if args.key?(:requested_storage_pool_provisioned_capacity)
17909
+ @storage_pool_type = args[:storage_pool_type] if args.key?(:storage_pool_type)
17910
+ end
17911
+ end
17912
+
17913
+ # Storage pool provisioned capacities for each SKU type.
17914
+ class FutureReservationStoragePoolProvisionedCapacity
17915
+ include Google::Apis::Core::Hashable
17916
+
17917
+ # Size of the storage pool in GiB.
17918
+ # Corresponds to the JSON property `poolProvisionedCapacityGb`
17919
+ # @return [Fixnum]
17920
+ attr_accessor :pool_provisioned_capacity_gb
17921
+
17922
+ # Provisioned IOPS of the storage pool. Only relevant if the storage pool
17923
+ # type is hyperdisk-balanced.
17924
+ # Corresponds to the JSON property `poolProvisionedIops`
17925
+ # @return [Fixnum]
17926
+ attr_accessor :pool_provisioned_iops
17927
+
17928
+ # Provisioned throughput of the storage pool in MiB/s. Only relevant if
17929
+ # the storage pool type is hyperdisk-balanced or hyperdisk-throughput.
17930
+ # Corresponds to the JSON property `poolProvisionedThroughput`
17931
+ # @return [Fixnum]
17932
+ attr_accessor :pool_provisioned_throughput
17933
+
17934
+ def initialize(**args)
17935
+ update!(**args)
17936
+ end
17937
+
17938
+ # Update properties of this object
17939
+ def update!(**args)
17940
+ @pool_provisioned_capacity_gb = args[:pool_provisioned_capacity_gb] if args.key?(:pool_provisioned_capacity_gb)
17941
+ @pool_provisioned_iops = args[:pool_provisioned_iops] if args.key?(:pool_provisioned_iops)
17942
+ @pool_provisioned_throughput = args[:pool_provisioned_throughput] if args.key?(:pool_provisioned_throughput)
17943
+ end
17944
+ end
17945
+
17214
17946
  #
17215
17947
  class FutureReservationTimeWindow
17216
17948
  include Google::Apis::Core::Hashable
@@ -20001,7 +20733,8 @@ module Google
20001
20733
  @errors = args[:errors] if args.key?(:errors)
20002
20734
  end
20003
20735
 
20004
- #
20736
+ # Represents a single error encountered during the processing of an
20737
+ # operation.
20005
20738
  class Error
20006
20739
  include Google::Apis::Core::Hashable
20007
20740
 
@@ -20042,7 +20775,8 @@ module Google
20042
20775
  @message = args[:message] if args.key?(:message)
20043
20776
  end
20044
20777
 
20045
- #
20778
+ # Container for structured error details providing additional context
20779
+ # specific to the encountered error code.
20046
20780
  class ErrorDetail
20047
20781
  include Google::Apis::Core::Hashable
20048
20782
 
@@ -20182,7 +20916,8 @@ module Google
20182
20916
  @errors = args[:errors] if args.key?(:errors)
20183
20917
  end
20184
20918
 
20185
- #
20919
+ # Represents a single error encountered during the processing of an
20920
+ # operation.
20186
20921
  class Error
20187
20922
  include Google::Apis::Core::Hashable
20188
20923
 
@@ -20223,7 +20958,8 @@ module Google
20223
20958
  @message = args[:message] if args.key?(:message)
20224
20959
  end
20225
20960
 
20226
- #
20961
+ # Container for structured error details providing additional context
20962
+ # specific to the encountered error code.
20227
20963
  class ErrorDetail
20228
20964
  include Google::Apis::Core::Hashable
20229
20965
 
@@ -25866,6 +26602,12 @@ module Google
25866
26602
  # @return [String]
25867
26603
  attr_accessor :last_suspended_timestamp
25868
26604
 
26605
+ # Specifies which method should be used for encrypting the
26606
+ # Local SSDs attached to the VM.
26607
+ # Corresponds to the JSON property `localSsdEncryptionMode`
26608
+ # @return [String]
26609
+ attr_accessor :local_ssd_encryption_mode
26610
+
25869
26611
  # Full or partial URL of the machine type resource to use for this instance,
25870
26612
  # in the format:zones/zone/machineTypes/machine-type. This is provided by the
25871
26613
  # client
@@ -26131,6 +26873,7 @@ module Google
26131
26873
  @last_start_timestamp = args[:last_start_timestamp] if args.key?(:last_start_timestamp)
26132
26874
  @last_stop_timestamp = args[:last_stop_timestamp] if args.key?(:last_stop_timestamp)
26133
26875
  @last_suspended_timestamp = args[:last_suspended_timestamp] if args.key?(:last_suspended_timestamp)
26876
+ @local_ssd_encryption_mode = args[:local_ssd_encryption_mode] if args.key?(:local_ssd_encryption_mode)
26134
26877
  @machine_type = args[:machine_type] if args.key?(:machine_type)
26135
26878
  @metadata = args[:metadata] if args.key?(:metadata)
26136
26879
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
@@ -27649,14 +28392,14 @@ module Google
27649
28392
  include Google::Apis::Core::Hashable
27650
28393
 
27651
28394
  # The action that a MIG performs on a failed VM. If the value of the
27652
- # onFailedHealthCheck field
27653
- # is `DEFAULT_ACTION`, then the same action also applies to the VMs on which
27654
- # your application
27655
- # fails a health check. Valid values are - REPAIR (default): MIG automatically
27656
- # repairs a failed
27657
- # VM by recreating it. For more information, see about repairing VMs in a MIG. -
27658
- # DO_NOTHING: MIG
27659
- # does not repair a failed VM.
28395
+ # onFailedHealthCheck field is `DEFAULT_ACTION`, then the same action also
28396
+ # applies to the VMs on which your application fails a health check.
28397
+ # Valid values are
28398
+ #
28399
+ # - REPAIR (default): MIG automatically repairs a failed VM
28400
+ # by recreating it. For more information, see About
28401
+ # repairing VMs in a MIG.
28402
+ # - DO_NOTHING: MIG does not repair a failed VM.
27660
28403
  # Corresponds to the JSON property `defaultActionOnFailure`
27661
28404
  # @return [String]
27662
28405
  attr_accessor :default_action_on_failure
@@ -28117,7 +28860,8 @@ module Google
28117
28860
  @errors = args[:errors] if args.key?(:errors)
28118
28861
  end
28119
28862
 
28120
- #
28863
+ # Represents a single error encountered during the processing of an
28864
+ # operation.
28121
28865
  class Error
28122
28866
  include Google::Apis::Core::Hashable
28123
28867
 
@@ -28158,7 +28902,8 @@ module Google
28158
28902
  @message = args[:message] if args.key?(:message)
28159
28903
  end
28160
28904
 
28161
- #
28905
+ # Container for structured error details providing additional context
28906
+ # specific to the encountered error code.
28162
28907
  class ErrorDetail
28163
28908
  include Google::Apis::Core::Hashable
28164
28909
 
@@ -28257,7 +29002,8 @@ module Google
28257
29002
  @errors = args[:errors] if args.key?(:errors)
28258
29003
  end
28259
29004
 
28260
- #
29005
+ # Represents a single error encountered during the processing of an
29006
+ # operation.
28261
29007
  class Error
28262
29008
  include Google::Apis::Core::Hashable
28263
29009
 
@@ -28298,7 +29044,8 @@ module Google
28298
29044
  @message = args[:message] if args.key?(:message)
28299
29045
  end
28300
29046
 
28301
- #
29047
+ # Container for structured error details providing additional context
29048
+ # specific to the encountered error code.
28302
29049
  class ErrorDetail
28303
29050
  include Google::Apis::Core::Hashable
28304
29051
 
@@ -28697,7 +29444,8 @@ module Google
28697
29444
  @errors = args[:errors] if args.key?(:errors)
28698
29445
  end
28699
29446
 
28700
- #
29447
+ # Represents a single error encountered during the processing of an
29448
+ # operation.
28701
29449
  class Error
28702
29450
  include Google::Apis::Core::Hashable
28703
29451
 
@@ -28738,7 +29486,8 @@ module Google
28738
29486
  @message = args[:message] if args.key?(:message)
28739
29487
  end
28740
29488
 
28741
- #
29489
+ # Container for structured error details providing additional context
29490
+ # specific to the encountered error code.
28742
29491
  class ErrorDetail
28743
29492
  include Google::Apis::Core::Hashable
28744
29493
 
@@ -28900,7 +29649,8 @@ module Google
28900
29649
  @errors = args[:errors] if args.key?(:errors)
28901
29650
  end
28902
29651
 
28903
- #
29652
+ # Represents a single error encountered during the processing of an
29653
+ # operation.
28904
29654
  class Error
28905
29655
  include Google::Apis::Core::Hashable
28906
29656
 
@@ -28941,7 +29691,8 @@ module Google
28941
29691
  @message = args[:message] if args.key?(:message)
28942
29692
  end
28943
29693
 
28944
- #
29694
+ # Container for structured error details providing additional context
29695
+ # specific to the encountered error code.
28945
29696
  class ErrorDetail
28946
29697
  include Google::Apis::Core::Hashable
28947
29698
 
@@ -29402,7 +30153,7 @@ module Google
29402
30153
  class InstanceGroupManagersApplyUpdatesRequest
29403
30154
  include Google::Apis::Core::Hashable
29404
30155
 
29405
- # Flag to update all instances instead of specified list of instances”.
30156
+ # Flag to update all instances instead of specified list of "instances".
29406
30157
  # If the flag is set to true then the instances may not be specified
29407
30158
  # in the request.
29408
30159
  # Corresponds to the JSON property `allInstances`
@@ -29756,7 +30507,8 @@ module Google
29756
30507
  @errors = args[:errors] if args.key?(:errors)
29757
30508
  end
29758
30509
 
29759
- #
30510
+ # Represents a single error encountered during the processing of an
30511
+ # operation.
29760
30512
  class Error
29761
30513
  include Google::Apis::Core::Hashable
29762
30514
 
@@ -29797,7 +30549,8 @@ module Google
29797
30549
  @message = args[:message] if args.key?(:message)
29798
30550
  end
29799
30551
 
29800
- #
30552
+ # Container for structured error details providing additional context
30553
+ # specific to the encountered error code.
29801
30554
  class ErrorDetail
29802
30555
  include Google::Apis::Core::Hashable
29803
30556
 
@@ -29863,15 +30616,15 @@ module Google
29863
30616
  class InstanceGroupManagersListErrorsResponse
29864
30617
  include Google::Apis::Core::Hashable
29865
30618
 
29866
- # Output only. [Output Only] The list of errors of the managed instance group.
30619
+ # Output only. The list of errors of the managed instance group.
29867
30620
  # Corresponds to the JSON property `items`
29868
30621
  # @return [Array<Google::Apis::ComputeAlpha::InstanceManagedByIgmError>]
29869
30622
  attr_accessor :items
29870
30623
 
29871
- # Output only. [Output Only] This token allows you to get the next page of
29872
- # results for
29873
- # list requests. If the number of results is larger thanmaxResults, use the
29874
- # nextPageToken as a value for
30624
+ # Output only. This token allows you to get the next page of results for list
30625
+ # requests.
30626
+ # If the number of results is larger than maxResults
30627
+ # , then use the nextPageToken as a value for
29875
30628
  # the query parameter pageToken in the next list request.
29876
30629
  # Subsequent list requests will have their own nextPageToken to
29877
30630
  # continue paging through the results.
@@ -31225,6 +31978,12 @@ module Google
31225
31978
  # @return [Hash<String,String>]
31226
31979
  attr_accessor :labels
31227
31980
 
31981
+ # Specifies which method should be used for encrypting the
31982
+ # Local SSDs attached to the VM.
31983
+ # Corresponds to the JSON property `localSsdEncryptionMode`
31984
+ # @return [String]
31985
+ attr_accessor :local_ssd_encryption_mode
31986
+
31228
31987
  # The machine type to use for instances that are created from these
31229
31988
  # properties.
31230
31989
  # This field only accepts a machine type name, for example `n2-standard-4`.
@@ -31364,6 +32123,7 @@ module Google
31364
32123
  @identity_certificate = args[:identity_certificate] if args.key?(:identity_certificate)
31365
32124
  @key_revocation_action_type = args[:key_revocation_action_type] if args.key?(:key_revocation_action_type)
31366
32125
  @labels = args[:labels] if args.key?(:labels)
32126
+ @local_ssd_encryption_mode = args[:local_ssd_encryption_mode] if args.key?(:local_ssd_encryption_mode)
31367
32127
  @machine_type = args[:machine_type] if args.key?(:machine_type)
31368
32128
  @metadata = args[:metadata] if args.key?(:metadata)
31369
32129
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
@@ -37667,6 +38427,14 @@ module Google
37667
38427
  attr_accessor :fail_open
37668
38428
  alias_method :fail_open?, :fail_open
37669
38429
 
38430
+ # Optional. URL of the InterconnectKeyGroup resource to use for MACsec, in the
38431
+ # format:
38432
+ # projects/`project`/locations/`region`/interconnectKeyGroups/`
38433
+ # interconnectKeyGroup`.
38434
+ # Corresponds to the JSON property `interconnectKeyGroup`
38435
+ # @return [String]
38436
+ attr_accessor :interconnect_key_group
38437
+
37670
38438
  # Required. A keychain placeholder describing a set of named key objects
37671
38439
  # along with their start times. A MACsec CKN/CAK is generated for each
37672
38440
  # key in the key chain. Google router automatically picks the key with
@@ -37683,6 +38451,7 @@ module Google
37683
38451
  # Update properties of this object
37684
38452
  def update!(**args)
37685
38453
  @fail_open = args[:fail_open] if args.key?(:fail_open)
38454
+ @interconnect_key_group = args[:interconnect_key_group] if args.key?(:interconnect_key_group)
37686
38455
  @pre_shared_keys = args[:pre_shared_keys] if args.key?(:pre_shared_keys)
37687
38456
  end
37688
38457
  end
@@ -38375,6 +39144,33 @@ module Google
38375
39144
  end
38376
39145
  end
38377
39146
 
39147
+ # Request to rename an interconnect.
39148
+ class InterconnectsSetNameRequest
39149
+ include Google::Apis::Core::Hashable
39150
+
39151
+ # The current name of the interconnect.
39152
+ # The name must be 1-63 characters long, and comply with RFC1035.
39153
+ # Corresponds to the JSON property `currentName`
39154
+ # @return [String]
39155
+ attr_accessor :current_name
39156
+
39157
+ # The new name of the interconnect.
39158
+ # The name must be 1-63 characters long, and comply with RFC1035.
39159
+ # Corresponds to the JSON property `name`
39160
+ # @return [String]
39161
+ attr_accessor :name
39162
+
39163
+ def initialize(**args)
39164
+ update!(**args)
39165
+ end
39166
+
39167
+ # Update properties of this object
39168
+ def update!(**args)
39169
+ @current_name = args[:current_name] if args.key?(:current_name)
39170
+ @name = args[:name] if args.key?(:name)
39171
+ end
39172
+ end
39173
+
38378
39174
  #
38379
39175
  class InternalIpAddress
38380
39176
  include Google::Apis::Core::Hashable
@@ -41121,15 +41917,13 @@ module Google
41121
41917
  # @return [Google::Apis::ComputeAlpha::ManagedInstancePropertiesFromFlexibilityPolicy]
41122
41918
  attr_accessor :properties_from_flexibility_policy
41123
41919
 
41124
- # Output only. [Output Only] Information about the termination timestamp of the
41125
- # instance,
41126
- # if applicable.
41920
+ # Output only. Information about the termination timestamp of the instance, if
41921
+ # applicable.
41127
41922
  # Corresponds to the JSON property `scheduling`
41128
41923
  # @return [Google::Apis::ComputeAlpha::ManagedInstanceScheduling]
41129
41924
  attr_accessor :scheduling
41130
41925
 
41131
- # Output only. [Output Only] Specifies the graceful shutdown details if the
41132
- # instance is in
41926
+ # Output only. Specifies the graceful shutdown details if the instance is in
41133
41927
  # `PENDING_STOP` state or there is a programmed stop scheduled.
41134
41928
  # Corresponds to the JSON property `shutdownDetails`
41135
41929
  # @return [Google::Apis::ComputeAlpha::ManagedInstanceShutdownDetails]
@@ -41246,6 +42040,9 @@ module Google
41246
42040
  # Policy.
41247
42041
  # - TERMINATION_TIMESTAMP Instance reached termination time,
41248
42042
  # thus managed instance group stops/deletes it.
42043
+ # - GRACEFUL_SHUTDOWN_TIMESTAMP Instance reached graceful
42044
+ # shutdown time, thus managed instance group stops/deletes it to
42045
+ # gracefully shut it down.
41249
42046
  # Corresponds to the JSON property `trigger`
41250
42047
  # @return [String]
41251
42048
  attr_accessor :trigger
@@ -41376,7 +42173,8 @@ module Google
41376
42173
  @errors = args[:errors] if args.key?(:errors)
41377
42174
  end
41378
42175
 
41379
- #
42176
+ # Represents a single error encountered during the processing of an
42177
+ # operation.
41380
42178
  class Error
41381
42179
  include Google::Apis::Core::Hashable
41382
42180
 
@@ -41417,7 +42215,8 @@ module Google
41417
42215
  @message = args[:message] if args.key?(:message)
41418
42216
  end
41419
42217
 
41420
- #
42218
+ # Container for structured error details providing additional context
42219
+ # specific to the encountered error code.
41421
42220
  class ErrorDetail
41422
42221
  include Google::Apis::Core::Hashable
41423
42222
 
@@ -41521,16 +42320,17 @@ module Google
41521
42320
  class ManagedInstanceScheduling
41522
42321
  include Google::Apis::Core::Hashable
41523
42322
 
41524
- # Output only. [Output Only] The timestamp at which the underlying instance will
41525
- # be
42323
+ # Output only. The timestamp at which the underlying instance will be
41526
42324
  # triggered for graceful shutdown if it is configured. This is in RFC3339 text
41527
42325
  # format.
41528
42326
  # Corresponds to the JSON property `gracefulShutdownTimestamp`
41529
42327
  # @return [String]
41530
42328
  attr_accessor :graceful_shutdown_timestamp
41531
42329
 
41532
- # Output only. [Output Only] The timestamp at which the managed instance will be
41533
- # terminated. This is in RFC3339 text format.
42330
+ # Output only. The timestamp at which the managed instance will be terminated.
42331
+ # This is
42332
+ # in RFC3339 text
42333
+ # format.
41534
42334
  # Corresponds to the JSON property `terminationTimestamp`
41535
42335
  # @return [String]
41536
42336
  attr_accessor :termination_timestamp
@@ -41558,9 +42358,10 @@ module Google
41558
42358
  # @return [Google::Apis::ComputeAlpha::Duration]
41559
42359
  attr_accessor :max_duration
41560
42360
 
41561
- # Output only. [Output Only] Past timestamp indicating the beginning of `
41562
- # PENDING_STOP`
41563
- # state of instance in RFC3339 text format.
42361
+ # Output only. Past timestamp indicating the beginning of `PENDING_STOP` state
42362
+ # of
42363
+ # instance in RFC3339
42364
+ # text format.
41564
42365
  # Corresponds to the JSON property `requestTimestamp`
41565
42366
  # @return [String]
41566
42367
  attr_accessor :request_timestamp
@@ -41603,6 +42404,257 @@ module Google
41603
42404
  end
41604
42405
  end
41605
42406
 
42407
+ # Represents a ManagedRuleset resource.
42408
+ # Managed internally by Cloud Armor CLH for Managed Rules features.
42409
+ # Customers can only view these resources to modify their Security Policies.
42410
+ # For more information, see
42411
+ # https://cloud.google.com/armor/docs/.
42412
+ class ManagedRuleset
42413
+ include Google::Apis::Core::Hashable
42414
+
42415
+ # Output only. [Output Only] The change log for this managed ruleset.
42416
+ # Corresponds to the JSON property `changeLog`
42417
+ # @return [String]
42418
+ attr_accessor :change_log
42419
+
42420
+ # Output only. [Output Only] Creation timestamp in RFC3339 text format.
42421
+ # Corresponds to the JSON property `creationTimestamp`
42422
+ # @return [String]
42423
+ attr_accessor :creation_timestamp
42424
+
42425
+ # [Output Only] An optional description of this resource.
42426
+ # Corresponds to the JSON property `description`
42427
+ # @return [String]
42428
+ attr_accessor :description
42429
+
42430
+ # Output only. [Output Only] The unique identifier for the resource. This
42431
+ # identifier is
42432
+ # defined by the server.
42433
+ # Corresponds to the JSON property `id`
42434
+ # @return [Fixnum]
42435
+ attr_accessor :id
42436
+
42437
+ # Name of the resource. Generated internally when the resource is created.
42438
+ # The name must be 1-63 characters long, and comply withRFC1035.
42439
+ # Specifically, the name must be 1-63 characters long and match the regular
42440
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
42441
+ # character must be a lowercase letter, and all following characters must
42442
+ # be a dash, lowercase letter, or digit, except the last character, which
42443
+ # cannot be a dash.
42444
+ # Corresponds to the JSON property `name`
42445
+ # @return [String]
42446
+ attr_accessor :name
42447
+
42448
+ # Output only. [Output Only] The list of managed rule IDs that are included in
42449
+ # this managed ruleset.
42450
+ # Corresponds to the JSON property `ruleIds`
42451
+ # @return [Array<String>]
42452
+ attr_accessor :rule_ids
42453
+
42454
+ # Output only. [Output Only] The managed ruleset identifier that can be
42455
+ # configured in
42456
+ # Security Policy rules.
42457
+ # Corresponds to the JSON property `rulesetId`
42458
+ # @return [String]
42459
+ attr_accessor :ruleset_id
42460
+
42461
+ # Output only. [Output Only] Server-defined URL for the resource.
42462
+ # Corresponds to the JSON property `selfLink`
42463
+ # @return [String]
42464
+ attr_accessor :self_link
42465
+
42466
+ def initialize(**args)
42467
+ update!(**args)
42468
+ end
42469
+
42470
+ # Update properties of this object
42471
+ def update!(**args)
42472
+ @change_log = args[:change_log] if args.key?(:change_log)
42473
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
42474
+ @description = args[:description] if args.key?(:description)
42475
+ @id = args[:id] if args.key?(:id)
42476
+ @name = args[:name] if args.key?(:name)
42477
+ @rule_ids = args[:rule_ids] if args.key?(:rule_ids)
42478
+ @ruleset_id = args[:ruleset_id] if args.key?(:ruleset_id)
42479
+ @self_link = args[:self_link] if args.key?(:self_link)
42480
+ end
42481
+ end
42482
+
42483
+ #
42484
+ class ManagedRulesetList
42485
+ include Google::Apis::Core::Hashable
42486
+
42487
+ #
42488
+ # Corresponds to the JSON property `id`
42489
+ # @return [String]
42490
+ attr_accessor :id
42491
+
42492
+ #
42493
+ # Corresponds to the JSON property `items`
42494
+ # @return [Array<Google::Apis::ComputeAlpha::ManagedRuleset>]
42495
+ attr_accessor :items
42496
+
42497
+ #
42498
+ # Corresponds to the JSON property `nextPageToken`
42499
+ # @return [String]
42500
+ attr_accessor :next_page_token
42501
+
42502
+ #
42503
+ # Corresponds to the JSON property `warning`
42504
+ # @return [Google::Apis::ComputeAlpha::ManagedRulesetList::Warning]
42505
+ attr_accessor :warning
42506
+
42507
+ def initialize(**args)
42508
+ update!(**args)
42509
+ end
42510
+
42511
+ # Update properties of this object
42512
+ def update!(**args)
42513
+ @id = args[:id] if args.key?(:id)
42514
+ @items = args[:items] if args.key?(:items)
42515
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
42516
+ @warning = args[:warning] if args.key?(:warning)
42517
+ end
42518
+
42519
+ #
42520
+ class Warning
42521
+ include Google::Apis::Core::Hashable
42522
+
42523
+ # [Output Only] A warning code, if applicable. For example, Compute
42524
+ # Engine returns NO_RESULTS_ON_PAGE if there
42525
+ # are no results in the response.
42526
+ # Corresponds to the JSON property `code`
42527
+ # @return [String]
42528
+ attr_accessor :code
42529
+
42530
+ # [Output Only] Metadata about this warning in key:
42531
+ # value format. For example:
42532
+ # "data": [
42533
+ # `
42534
+ # "key": "scope",
42535
+ # "value": "zones/us-east1-d"
42536
+ # `
42537
+ # Corresponds to the JSON property `data`
42538
+ # @return [Array<Google::Apis::ComputeAlpha::ManagedRulesetList::Warning::Datum>]
42539
+ attr_accessor :data
42540
+
42541
+ # [Output Only] A human-readable description of the warning code.
42542
+ # Corresponds to the JSON property `message`
42543
+ # @return [String]
42544
+ attr_accessor :message
42545
+
42546
+ def initialize(**args)
42547
+ update!(**args)
42548
+ end
42549
+
42550
+ # Update properties of this object
42551
+ def update!(**args)
42552
+ @code = args[:code] if args.key?(:code)
42553
+ @data = args[:data] if args.key?(:data)
42554
+ @message = args[:message] if args.key?(:message)
42555
+ end
42556
+
42557
+ #
42558
+ class Datum
42559
+ include Google::Apis::Core::Hashable
42560
+
42561
+ # [Output Only] A key that provides more detail on the warning being
42562
+ # returned. For example, for warnings where there are no results in a list
42563
+ # request for a particular zone, this key might be scope and
42564
+ # the key value might be the zone name. Other examples might be a key
42565
+ # indicating a deprecated resource and a suggested replacement, or a
42566
+ # warning about invalid network settings (for example, if an instance
42567
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
42568
+ # Corresponds to the JSON property `key`
42569
+ # @return [String]
42570
+ attr_accessor :key
42571
+
42572
+ # [Output Only] A warning data value corresponding to the key.
42573
+ # Corresponds to the JSON property `value`
42574
+ # @return [String]
42575
+ attr_accessor :value
42576
+
42577
+ def initialize(**args)
42578
+ update!(**args)
42579
+ end
42580
+
42581
+ # Update properties of this object
42582
+ def update!(**args)
42583
+ @key = args[:key] if args.key?(:key)
42584
+ @value = args[:value] if args.key?(:value)
42585
+ end
42586
+ end
42587
+ end
42588
+ end
42589
+
42590
+ # Represents a managed interface for an accelerator domain.
42591
+ # It defines the network endpoint and authentication configuration needed to
42592
+ # access specific management services like NMX-C or gNMI.
42593
+ class ManagementInterface
42594
+ include Google::Apis::Core::Hashable
42595
+
42596
+ # Authentication configuration for the management interface, typically using
42597
+ # mTLS.
42598
+ # Corresponds to the JSON property `authenticationConfig`
42599
+ # @return [Google::Apis::ComputeAlpha::AuthenticationConfig]
42600
+ attr_accessor :authentication_config
42601
+
42602
+ # The IPv4 internal IP address assigned to this management interface
42603
+ # endpoint. This address will be used by the customer to route traffic to the
42604
+ # management interface.
42605
+ # Corresponds to the JSON property `ipv4Address`
42606
+ # @return [String]
42607
+ attr_accessor :ipv4_address
42608
+
42609
+ # The IPv6 internal IP address assigned to this management interface
42610
+ # endpoint. This address will be used by the customer to route traffic to the
42611
+ # management interface if IPv6 is supported and configured.
42612
+ # Corresponds to the JSON property `ipv6Address`
42613
+ # @return [String]
42614
+ attr_accessor :ipv6_address
42615
+
42616
+ # The URL of the VPC network to which the management interface endpoint is
42617
+ # attached. The customer must ensure that this network is correctly
42618
+ # configured for routing to the accelerator domain.
42619
+ # Corresponds to the JSON property `network`
42620
+ # @return [String]
42621
+ attr_accessor :network
42622
+
42623
+ #
42624
+ # Corresponds to the JSON property `state`
42625
+ # @return [String]
42626
+ attr_accessor :state
42627
+
42628
+ # The URL of the subnetwork from which to assign the IP address for the
42629
+ # endpoint. The subnetwork must belong to the specified network and have
42630
+ # available IP addresses.
42631
+ # Corresponds to the JSON property `subnetwork`
42632
+ # @return [String]
42633
+ attr_accessor :subnetwork
42634
+
42635
+ # Required. The type of management service this interface provides.
42636
+ # Supported types include NMX-C for partition management, gNMI for switch
42637
+ # monitoring, and TPU slice management.
42638
+ # Corresponds to the JSON property `type`
42639
+ # @return [String]
42640
+ attr_accessor :type
42641
+
42642
+ def initialize(**args)
42643
+ update!(**args)
42644
+ end
42645
+
42646
+ # Update properties of this object
42647
+ def update!(**args)
42648
+ @authentication_config = args[:authentication_config] if args.key?(:authentication_config)
42649
+ @ipv4_address = args[:ipv4_address] if args.key?(:ipv4_address)
42650
+ @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
42651
+ @network = args[:network] if args.key?(:network)
42652
+ @state = args[:state] if args.key?(:state)
42653
+ @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
42654
+ @type = args[:type] if args.key?(:type)
42655
+ end
42656
+ end
42657
+
41606
42658
  # A metadata key/value entry.
41607
42659
  class Metadata
41608
42660
  include Google::Apis::Core::Hashable
@@ -42245,7 +43297,8 @@ module Google
42245
43297
  @errors = args[:errors] if args.key?(:errors)
42246
43298
  end
42247
43299
 
42248
- #
43300
+ # Represents a single error encountered during the processing of an
43301
+ # operation.
42249
43302
  class Error
42250
43303
  include Google::Apis::Core::Hashable
42251
43304
 
@@ -42286,7 +43339,8 @@ module Google
42286
43339
  @message = args[:message] if args.key?(:message)
42287
43340
  end
42288
43341
 
42289
- #
43342
+ # Container for structured error details providing additional context
43343
+ # specific to the encountered error code.
42290
43344
  class ErrorDetail
42291
43345
  include Google::Apis::Core::Hashable
42292
43346
 
@@ -42915,14 +43969,16 @@ module Google
42915
43969
  # @return [String]
42916
43970
  attr_accessor :network
42917
43971
 
42918
- # Projects that are allowed to connect to this network attachment.
42919
- # The project can be specified using its id or number.
43972
+ # Projects or service class ids that are allowed to connect to this network
43973
+ # attachment. The project can be specified using its id or number. Service
43974
+ # class id can be specified as "serviceclasses/`service_class_id`".
42920
43975
  # Corresponds to the JSON property `producerAcceptLists`
42921
43976
  # @return [Array<String>]
42922
43977
  attr_accessor :producer_accept_lists
42923
43978
 
42924
- # Projects that are not allowed to connect to this network attachment.
42925
- # The project can be specified using its id or number.
43979
+ # Projects or service class ids that are not allowed to connect to this
43980
+ # network attachment. The project can be specified using its id or number.
43981
+ # Service class id can be specified as "serviceclasses/`service_class_id`".
42926
43982
  # Corresponds to the JSON property `producerRejectLists`
42927
43983
  # @return [Array<String>]
42928
43984
  attr_accessor :producer_reject_lists
@@ -46399,6 +47455,14 @@ module Google
46399
47455
  class NetworkPolicyTrafficClassificationRuleMatcher
46400
47456
  include Google::Apis::Core::Hashable
46401
47457
 
47458
+ # Address groups which should be matched against the traffic destination.
47459
+ # Maximum number of destination address groups is 10.
47460
+ # Example:
47461
+ # projects//locations//addressGroups/.
47462
+ # Corresponds to the JSON property `destAddressGroups`
47463
+ # @return [Array<String>]
47464
+ attr_accessor :dest_address_groups
47465
+
46402
47466
  # CIDR IP address range.
46403
47467
  # Maximum number of destination CIDR IP ranges allowed is 5000.
46404
47468
  # Corresponds to the JSON property `destIpRanges`
@@ -46422,6 +47486,7 @@ module Google
46422
47486
 
46423
47487
  # Update properties of this object
46424
47488
  def update!(**args)
47489
+ @dest_address_groups = args[:dest_address_groups] if args.key?(:dest_address_groups)
46425
47490
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
46426
47491
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
46427
47492
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
@@ -49805,6 +50870,11 @@ module Google
49805
50870
  # @return [Google::Apis::ComputeAlpha::Operation::Error]
49806
50871
  attr_accessor :error
49807
50872
 
50873
+ # Metadata for FirewallPolicyRule operations.
50874
+ # Corresponds to the JSON property `firewallPolicyRuleOperationMetadata`
50875
+ # @return [Google::Apis::ComputeAlpha::FirewallPolicyRuleOperationMetadata]
50876
+ attr_accessor :firewall_policy_rule_operation_metadata
50877
+
49808
50878
  #
49809
50879
  # Corresponds to the JSON property `getVersionOperationMetadata`
49810
50880
  # @return [Google::Apis::ComputeAlpha::GetVersionOperationMetadata]
@@ -49963,6 +51033,7 @@ module Google
49963
51033
  @description = args[:description] if args.key?(:description)
49964
51034
  @end_time = args[:end_time] if args.key?(:end_time)
49965
51035
  @error = args[:error] if args.key?(:error)
51036
+ @firewall_policy_rule_operation_metadata = args[:firewall_policy_rule_operation_metadata] if args.key?(:firewall_policy_rule_operation_metadata)
49966
51037
  @get_version_operation_metadata = args[:get_version_operation_metadata] if args.key?(:get_version_operation_metadata)
49967
51038
  @http_error_message = args[:http_error_message] if args.key?(:http_error_message)
49968
51039
  @http_error_status_code = args[:http_error_status_code] if args.key?(:http_error_status_code)
@@ -50008,7 +51079,8 @@ module Google
50008
51079
  @errors = args[:errors] if args.key?(:errors)
50009
51080
  end
50010
51081
 
50011
- #
51082
+ # Represents a single error encountered during the processing of an
51083
+ # operation.
50012
51084
  class Error
50013
51085
  include Google::Apis::Core::Hashable
50014
51086
 
@@ -50049,7 +51121,8 @@ module Google
50049
51121
  @message = args[:message] if args.key?(:message)
50050
51122
  end
50051
51123
 
50052
- #
51124
+ # Container for structured error details providing additional context
51125
+ # specific to the encountered error code.
50053
51126
  class ErrorDetail
50054
51127
  include Google::Apis::Core::Hashable
50055
51128
 
@@ -54504,7 +55577,8 @@ module Google
54504
55577
  @errors = args[:errors] if args.key?(:errors)
54505
55578
  end
54506
55579
 
54507
- #
55580
+ # Represents a single error encountered during the processing of an
55581
+ # operation.
54508
55582
  class Error
54509
55583
  include Google::Apis::Core::Hashable
54510
55584
 
@@ -54545,7 +55619,8 @@ module Google
54545
55619
  @message = args[:message] if args.key?(:message)
54546
55620
  end
54547
55621
 
54548
- #
55622
+ # Container for structured error details providing additional context
55623
+ # specific to the encountered error code.
54549
55624
  class ErrorDetail
54550
55625
  include Google::Apis::Core::Hashable
54551
55626
 
@@ -56973,7 +58048,7 @@ module Google
56973
58048
  class RegionInstanceGroupManagersApplyUpdatesRequest
56974
58049
  include Google::Apis::Core::Hashable
56975
58050
 
56976
- # Flag to update all instances instead of specified list of instances”.
58051
+ # Flag to update all instances instead of specified list of "instances".
56977
58052
  # If the flag is set to true then the instances may not be specified
56978
58053
  # in the request.
56979
58054
  # Corresponds to the JSON property `allInstances`
@@ -58188,7 +59263,7 @@ module Google
58188
59263
  class ReliabilityRisk
58189
59264
  include Google::Apis::Core::Hashable
58190
59265
 
58191
- # Output only. [Output Only] Creation timestamp inRFC3339
59266
+ # Output only. [Output Only] Creation timestamp in RFC3339
58192
59267
  # text format.
58193
59268
  # Corresponds to the JSON property `creationTimestamp`
58194
59269
  # @return [String]
@@ -58200,7 +59275,7 @@ module Google
58200
59275
  # @return [String]
58201
59276
  attr_accessor :description
58202
59277
 
58203
- # Details about a risk.
59278
+ # Detailed insights and metrics about a detected reliability risk.
58204
59279
  # Corresponds to the JSON property `details`
58205
59280
  # @return [Google::Apis::ComputeAlpha::RiskDetails]
58206
59281
  attr_accessor :details
@@ -58218,12 +59293,12 @@ module Google
58218
59293
  attr_accessor :kind
58219
59294
 
58220
59295
  # Name of the resource. The name must be 1-63 characters long and
58221
- # comply withRFC1035.
59296
+ # comply with RFC1035.
58222
59297
  # Corresponds to the JSON property `name`
58223
59298
  # @return [String]
58224
59299
  attr_accessor :name
58225
59300
 
58226
- # Recommendation with reference url.
59301
+ # Recommendation for mitigating a reliability risk, including a reference URL.
58227
59302
  # Corresponds to the JSON property `recommendation`
58228
59303
  # @return [Google::Apis::ComputeAlpha::RiskRecommendation]
58229
59304
  attr_accessor :recommendation
@@ -58257,7 +59332,7 @@ module Google
58257
59332
  end
58258
59333
  end
58259
59334
 
58260
- #
59335
+ # Response message for the List method of ReliabilityRisksService.
58261
59336
  class ReliabilityRisksListResponse
58262
59337
  include Google::Apis::Core::Hashable
58263
59338
 
@@ -59310,6 +60385,301 @@ module Google
59310
60385
  end
59311
60386
  end
59312
60387
 
60388
+ # ReservationConsumedInstance represents a consumed instance.
60389
+ class ReservationConsumedInstance
60390
+ include Google::Apis::Core::Hashable
60391
+
60392
+ # The full URI of the instance resource.
60393
+ # Corresponds to the JSON property `instance`
60394
+ # @return [String]
60395
+ attr_accessor :instance
60396
+
60397
+ # The service to which the instance belongs. Typically "COMPUTE".
60398
+ # Corresponds to the JSON property `service`
60399
+ # @return [String]
60400
+ attr_accessor :service
60401
+
60402
+ # Status information for the instance's consumption of the reservation.
60403
+ # Corresponds to the JSON property `status`
60404
+ # @return [Google::Apis::ComputeAlpha::ReservationConsumedInstanceStatus]
60405
+ attr_accessor :status
60406
+
60407
+ def initialize(**args)
60408
+ update!(**args)
60409
+ end
60410
+
60411
+ # Update properties of this object
60412
+ def update!(**args)
60413
+ @instance = args[:instance] if args.key?(:instance)
60414
+ @service = args[:service] if args.key?(:service)
60415
+ @status = args[:status] if args.key?(:status)
60416
+ end
60417
+ end
60418
+
60419
+ # Status information for the instance's consumption of the reservation.
60420
+ class ReservationConsumedInstanceStatus
60421
+ include Google::Apis::Core::Hashable
60422
+
60423
+ # A list of issues related to this instance's linkage to the reservation.
60424
+ # Corresponds to the JSON property `linkageErrors`
60425
+ # @return [Google::Apis::ComputeAlpha::ReservationConsumedInstanceStatus::LinkageErrors]
60426
+ attr_accessor :linkage_errors
60427
+
60428
+ def initialize(**args)
60429
+ update!(**args)
60430
+ end
60431
+
60432
+ # Update properties of this object
60433
+ def update!(**args)
60434
+ @linkage_errors = args[:linkage_errors] if args.key?(:linkage_errors)
60435
+ end
60436
+
60437
+ # A list of issues related to this instance's linkage to the reservation.
60438
+ class LinkageErrors
60439
+ include Google::Apis::Core::Hashable
60440
+
60441
+ # [Output Only] The array of errors encountered while processing this
60442
+ # operation.
60443
+ # Corresponds to the JSON property `errors`
60444
+ # @return [Array<Google::Apis::ComputeAlpha::ReservationConsumedInstanceStatus::LinkageErrors::Error>]
60445
+ attr_accessor :errors
60446
+
60447
+ def initialize(**args)
60448
+ update!(**args)
60449
+ end
60450
+
60451
+ # Update properties of this object
60452
+ def update!(**args)
60453
+ @errors = args[:errors] if args.key?(:errors)
60454
+ end
60455
+
60456
+ # Represents a single error encountered during the processing of an
60457
+ # operation.
60458
+ class Error
60459
+ include Google::Apis::Core::Hashable
60460
+
60461
+ # [Output Only] The error type identifier for this error.
60462
+ # Corresponds to the JSON property `code`
60463
+ # @return [String]
60464
+ attr_accessor :code
60465
+
60466
+ # [Output Only] An optional list of messages that contain the error
60467
+ # details. There is a set of defined message types to use for providing
60468
+ # details.The syntax depends on the error code. For example,
60469
+ # QuotaExceededInfo will have details when the error code is
60470
+ # QUOTA_EXCEEDED.
60471
+ # Corresponds to the JSON property `errorDetails`
60472
+ # @return [Array<Google::Apis::ComputeAlpha::ReservationConsumedInstanceStatus::LinkageErrors::Error::ErrorDetail>]
60473
+ attr_accessor :error_details
60474
+
60475
+ # [Output Only] Indicates the field in the request that caused the error.
60476
+ # This property is optional.
60477
+ # Corresponds to the JSON property `location`
60478
+ # @return [String]
60479
+ attr_accessor :location
60480
+
60481
+ # [Output Only] An optional, human-readable error message.
60482
+ # Corresponds to the JSON property `message`
60483
+ # @return [String]
60484
+ attr_accessor :message
60485
+
60486
+ def initialize(**args)
60487
+ update!(**args)
60488
+ end
60489
+
60490
+ # Update properties of this object
60491
+ def update!(**args)
60492
+ @code = args[:code] if args.key?(:code)
60493
+ @error_details = args[:error_details] if args.key?(:error_details)
60494
+ @location = args[:location] if args.key?(:location)
60495
+ @message = args[:message] if args.key?(:message)
60496
+ end
60497
+
60498
+ # Container for structured error details providing additional context
60499
+ # specific to the encountered error code.
60500
+ class ErrorDetail
60501
+ include Google::Apis::Core::Hashable
60502
+
60503
+ # Describes the cause of the error with structured details.
60504
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
60505
+ # is not enabled:
60506
+ # ` "reason": "API_DISABLED"
60507
+ # "domain": "googleapis.com"
60508
+ # "metadata": `
60509
+ # "resource": "projects/123",
60510
+ # "service": "pubsub.googleapis.com"
60511
+ # `
60512
+ # `
60513
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
60514
+ # Example of an error that is returned when attempting to create a Spanner
60515
+ # instance in a region that is out of stock:
60516
+ # ` "reason": "STOCKOUT"
60517
+ # "domain": "spanner.googleapis.com",
60518
+ # "metadata": `
60519
+ # "availableRegions": "us-central1,us-east2"
60520
+ # `
60521
+ # `
60522
+ # Corresponds to the JSON property `errorInfo`
60523
+ # @return [Google::Apis::ComputeAlpha::ErrorInfo]
60524
+ attr_accessor :error_info
60525
+
60526
+ # Provides links to documentation or for performing an out of band action.
60527
+ # For example, if a quota check failed with an error indicating the calling
60528
+ # project hasn't enabled the accessed service, this can contain a URL pointing
60529
+ # directly to the right place in the developer console to flip the bit.
60530
+ # Corresponds to the JSON property `help`
60531
+ # @return [Google::Apis::ComputeAlpha::Help]
60532
+ attr_accessor :help
60533
+
60534
+ # Provides a localized error message that is safe to return to the user
60535
+ # which can be attached to an RPC error.
60536
+ # Corresponds to the JSON property `localizedMessage`
60537
+ # @return [Google::Apis::ComputeAlpha::LocalizedMessage]
60538
+ attr_accessor :localized_message
60539
+
60540
+ # Additional details for quota exceeded error for resource quota.
60541
+ # Corresponds to the JSON property `quotaInfo`
60542
+ # @return [Google::Apis::ComputeAlpha::QuotaExceededInfo]
60543
+ attr_accessor :quota_info
60544
+
60545
+ def initialize(**args)
60546
+ update!(**args)
60547
+ end
60548
+
60549
+ # Update properties of this object
60550
+ def update!(**args)
60551
+ @error_info = args[:error_info] if args.key?(:error_info)
60552
+ @help = args[:help] if args.key?(:help)
60553
+ @localized_message = args[:localized_message] if args.key?(:localized_message)
60554
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
60555
+ end
60556
+ end
60557
+ end
60558
+ end
60559
+ end
60560
+
60561
+ # Response message for listing reservation consumed instances.
60562
+ class ReservationConsumedInstancesListResponse
60563
+ include Google::Apis::Core::Hashable
60564
+
60565
+ # Uniquely identifies the type of this resource.
60566
+ # Corresponds to the JSON property `id`
60567
+ # @return [String]
60568
+ attr_accessor :id
60569
+
60570
+ # A list of ReservationConsumedInstance resources.
60571
+ # Corresponds to the JSON property `items`
60572
+ # @return [Array<Google::Apis::ComputeAlpha::ReservationConsumedInstance>]
60573
+ attr_accessor :items
60574
+
60575
+ # Identifies the resource as a list of reservation consumed instances.
60576
+ # Corresponds to the JSON property `kind`
60577
+ # @return [String]
60578
+ attr_accessor :kind
60579
+
60580
+ # [Output Only] This token allows you to get the next page of results for
60581
+ # list requests.
60582
+ # Corresponds to the JSON property `nextPageToken`
60583
+ # @return [String]
60584
+ attr_accessor :next_page_token
60585
+
60586
+ # Output only. [Output Only] Server-defined URL for this resource.
60587
+ # Corresponds to the JSON property `selfLink`
60588
+ # @return [String]
60589
+ attr_accessor :self_link
60590
+
60591
+ # [Output Only] Informational warning which replaces the result in some
60592
+ # cases.
60593
+ # Corresponds to the JSON property `warning`
60594
+ # @return [Google::Apis::ComputeAlpha::ReservationConsumedInstancesListResponse::Warning]
60595
+ attr_accessor :warning
60596
+
60597
+ def initialize(**args)
60598
+ update!(**args)
60599
+ end
60600
+
60601
+ # Update properties of this object
60602
+ def update!(**args)
60603
+ @id = args[:id] if args.key?(:id)
60604
+ @items = args[:items] if args.key?(:items)
60605
+ @kind = args[:kind] if args.key?(:kind)
60606
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
60607
+ @self_link = args[:self_link] if args.key?(:self_link)
60608
+ @warning = args[:warning] if args.key?(:warning)
60609
+ end
60610
+
60611
+ # [Output Only] Informational warning which replaces the result in some
60612
+ # cases.
60613
+ class Warning
60614
+ include Google::Apis::Core::Hashable
60615
+
60616
+ # [Output Only] A warning code, if applicable. For example, Compute
60617
+ # Engine returns NO_RESULTS_ON_PAGE if there
60618
+ # are no results in the response.
60619
+ # Corresponds to the JSON property `code`
60620
+ # @return [String]
60621
+ attr_accessor :code
60622
+
60623
+ # [Output Only] Metadata about this warning in key:
60624
+ # value format. For example:
60625
+ # "data": [
60626
+ # `
60627
+ # "key": "scope",
60628
+ # "value": "zones/us-east1-d"
60629
+ # `
60630
+ # Corresponds to the JSON property `data`
60631
+ # @return [Array<Google::Apis::ComputeAlpha::ReservationConsumedInstancesListResponse::Warning::Datum>]
60632
+ attr_accessor :data
60633
+
60634
+ # [Output Only] A human-readable description of the warning code.
60635
+ # Corresponds to the JSON property `message`
60636
+ # @return [String]
60637
+ attr_accessor :message
60638
+
60639
+ def initialize(**args)
60640
+ update!(**args)
60641
+ end
60642
+
60643
+ # Update properties of this object
60644
+ def update!(**args)
60645
+ @code = args[:code] if args.key?(:code)
60646
+ @data = args[:data] if args.key?(:data)
60647
+ @message = args[:message] if args.key?(:message)
60648
+ end
60649
+
60650
+ #
60651
+ class Datum
60652
+ include Google::Apis::Core::Hashable
60653
+
60654
+ # [Output Only] A key that provides more detail on the warning being
60655
+ # returned. For example, for warnings where there are no results in a list
60656
+ # request for a particular zone, this key might be scope and
60657
+ # the key value might be the zone name. Other examples might be a key
60658
+ # indicating a deprecated resource and a suggested replacement, or a
60659
+ # warning about invalid network settings (for example, if an instance
60660
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
60661
+ # Corresponds to the JSON property `key`
60662
+ # @return [String]
60663
+ attr_accessor :key
60664
+
60665
+ # [Output Only] A warning data value corresponding to the key.
60666
+ # Corresponds to the JSON property `value`
60667
+ # @return [String]
60668
+ attr_accessor :value
60669
+
60670
+ def initialize(**args)
60671
+ update!(**args)
60672
+ end
60673
+
60674
+ # Update properties of this object
60675
+ def update!(**args)
60676
+ @key = args[:key] if args.key?(:key)
60677
+ @value = args[:value] if args.key?(:value)
60678
+ end
60679
+ end
60680
+ end
60681
+ end
60682
+
59313
60683
  #
59314
60684
  class ReservationList
59315
60685
  include Google::Apis::Core::Hashable
@@ -59847,6 +61217,13 @@ module Google
59847
61217
  # @return [Google::Apis::ComputeAlpha::GroupMaintenanceInfo]
59848
61218
  attr_accessor :reservation_sub_block_maintenance
59849
61219
 
61220
+ # Customer specified retention priority for power shedding events.
61221
+ # Used to determine priority of the subBlock relative to others during
61222
+ # a power shedding event. Higher priorities are retained over lower ones.
61223
+ # Corresponds to the JSON property `retentionPriority`
61224
+ # @return [Fixnum]
61225
+ attr_accessor :retention_priority
61226
+
59850
61227
  # Output only. [Output Only] Server-defined fully-qualified URL for this
59851
61228
  # resource.
59852
61229
  # Corresponds to the JSON property `selfLink`
@@ -59886,6 +61263,7 @@ module Google
59886
61263
  @name = args[:name] if args.key?(:name)
59887
61264
  @physical_topology = args[:physical_topology] if args.key?(:physical_topology)
59888
61265
  @reservation_sub_block_maintenance = args[:reservation_sub_block_maintenance] if args.key?(:reservation_sub_block_maintenance)
61266
+ @retention_priority = args[:retention_priority] if args.key?(:retention_priority)
59889
61267
  @self_link = args[:self_link] if args.key?(:self_link)
59890
61268
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
59891
61269
  @status = args[:status] if args.key?(:status)
@@ -61923,6 +63301,13 @@ module Google
61923
63301
  # @return [Fixnum]
61924
63302
  attr_accessor :availability_domain
61925
63303
 
63304
+ # Output only. Specifies the timestamp, when the instance will start graceful
63305
+ # shutdown
63306
+ # process, in RFC3339 text format.
63307
+ # Corresponds to the JSON property `gracefulShutdownTimestamp`
63308
+ # @return [String]
63309
+ attr_accessor :graceful_shutdown_timestamp
63310
+
61926
63311
  # Time in future when the instance will be terminated inRFC3339 text format.
61927
63312
  # Corresponds to the JSON property `terminationTimestamp`
61928
63313
  # @return [String]
@@ -61935,6 +63320,7 @@ module Google
61935
63320
  # Update properties of this object
61936
63321
  def update!(**args)
61937
63322
  @availability_domain = args[:availability_domain] if args.key?(:availability_domain)
63323
+ @graceful_shutdown_timestamp = args[:graceful_shutdown_timestamp] if args.key?(:graceful_shutdown_timestamp)
61938
63324
  @termination_timestamp = args[:termination_timestamp] if args.key?(:termination_timestamp)
61939
63325
  end
61940
63326
  end
@@ -62033,7 +63419,7 @@ module Google
62033
63419
  end
62034
63420
  end
62035
63421
 
62036
- # Details about a risk.
63422
+ # Detailed insights and metrics about a detected reliability risk.
62037
63423
  class RiskDetails
62038
63424
  include Google::Apis::Core::Hashable
62039
63425
 
@@ -62042,7 +63428,7 @@ module Google
62042
63428
  # @return [String]
62043
63429
  attr_accessor :duration
62044
63430
 
62045
- #
63431
+ # Detailed insights for a global DNS reliability risk.
62046
63432
  # Corresponds to the JSON property `globalDnsInsight`
62047
63433
  # @return [Google::Apis::ComputeAlpha::RiskDetailsGlobalDnsInsight]
62048
63434
  attr_accessor :global_dns_insight
@@ -62076,11 +63462,11 @@ module Google
62076
63462
  end
62077
63463
  end
62078
63464
 
62079
- #
63465
+ # Detailed insights for a global DNS reliability risk.
62080
63466
  class RiskDetailsGlobalDnsInsight
62081
63467
  include Google::Apis::Core::Hashable
62082
63468
 
62083
- # Whether the project default DNS setting is global or not.
63469
+ # Indicates whether the project's default DNS setting is global DNS.
62084
63470
  # Corresponds to the JSON property `projectDefaultIsGlobalDns`
62085
63471
  # @return [Boolean]
62086
63472
  attr_accessor :project_default_is_global_dns
@@ -62091,8 +63477,8 @@ module Google
62091
63477
  # @return [String]
62092
63478
  attr_accessor :query_observation_window
62093
63479
 
62094
- # The number of queries that are risky. This will always be less than
62095
- # total_query_count.
63480
+ # The number of queries that are risky. This is always less than or
63481
+ # equal to total_query_count.
62096
63482
  # Corresponds to the JSON property `riskyQueryCount`
62097
63483
  # @return [Fixnum]
62098
63484
  attr_accessor :risky_query_count
@@ -62115,7 +63501,7 @@ module Google
62115
63501
  end
62116
63502
  end
62117
63503
 
62118
- # Recommendation with reference url.
63504
+ # Recommendation for mitigating a reliability risk, including a reference URL.
62119
63505
  class RiskRecommendation
62120
63506
  include Google::Apis::Core::Hashable
62121
63507
 
@@ -64724,8 +66110,9 @@ module Google
64724
66110
 
64725
66111
  # Output only. Effective timeout (in seconds) for TCP connections that are in
64726
66112
  # TIME_WAIT
64727
- # state. This value is equal to tcp_time_wait_timeout_sec if it is set,
64728
- # otherwise it is equal to 120s. The field is output only.
66113
+ # state. This value is equal to tcp_time_wait_timeout_sec.
66114
+ # If tcp_time_wait_timeout_sec isn't set, the effective timeout is 30s or
66115
+ # 120s. The field is output only.
64729
66116
  # Corresponds to the JSON property `effectiveTcpTimeWaitTimeoutSec`
64730
66117
  # @return [Fixnum]
64731
66118
  attr_accessor :effective_tcp_time_wait_timeout_sec
@@ -64997,6 +66384,11 @@ module Google
64997
66384
  # @return [Fixnum]
64998
66385
  attr_accessor :rule_number
64999
66386
 
66387
+ # A list of source workload identities.
66388
+ # Corresponds to the JSON property `sourceWorkloadIdentities`
66389
+ # @return [Array<String>]
66390
+ attr_accessor :source_workload_identities
66391
+
65000
66392
  def initialize(**args)
65001
66393
  update!(**args)
65002
66394
  end
@@ -65007,6 +66399,7 @@ module Google
65007
66399
  @description = args[:description] if args.key?(:description)
65008
66400
  @match = args[:match] if args.key?(:match)
65009
66401
  @rule_number = args[:rule_number] if args.key?(:rule_number)
66402
+ @source_workload_identities = args[:source_workload_identities] if args.key?(:source_workload_identities)
65010
66403
  end
65011
66404
  end
65012
66405
 
@@ -65219,6 +66612,13 @@ module Google
65219
66612
  # @return [Google::Apis::ComputeAlpha::BfdStatus]
65220
66613
  attr_accessor :bfd_status
65221
66614
 
66615
+ # Output only. [Output Only] Indicates whether the BGP peer is in a
66616
+ # depreferenced state.
66617
+ # Corresponds to the JSON property `depreferenced`
66618
+ # @return [Boolean]
66619
+ attr_accessor :depreferenced
66620
+ alias_method :depreferenced?, :depreferenced
66621
+
65222
66622
  # Output only. Enable IPv4 traffic over BGP Peer.
65223
66623
  # It is enabled by default if the peerIpAddress is version 4.
65224
66624
  # Corresponds to the JSON property `enableIpv4`
@@ -65339,6 +66739,7 @@ module Google
65339
66739
  def update!(**args)
65340
66740
  @advertised_routes = args[:advertised_routes] if args.key?(:advertised_routes)
65341
66741
  @bfd_status = args[:bfd_status] if args.key?(:bfd_status)
66742
+ @depreferenced = args[:depreferenced] if args.key?(:depreferenced)
65342
66743
  @enable_ipv4 = args[:enable_ipv4] if args.key?(:enable_ipv4)
65343
66744
  @enable_ipv6 = args[:enable_ipv6] if args.key?(:enable_ipv6)
65344
66745
  @ip_address = args[:ip_address] if args.key?(:ip_address)
@@ -66562,6 +67963,11 @@ module Google
66562
67963
  # @return [String]
66563
67964
  attr_accessor :termination_time
66564
67965
 
67966
+ # Message to control the enablement of the vsock device.
67967
+ # Corresponds to the JSON property `vsockMode`
67968
+ # @return [Google::Apis::ComputeAlpha::SchedulingVsockMode]
67969
+ attr_accessor :vsock_mode
67970
+
66565
67971
  # Represents the Windows Server License Optimization Mode of the VM. If
66566
67972
  # unspecified, the default mode is `OFF`.
66567
67973
  # Corresponds to the JSON property `windowsLicenseOptimizationMode`
@@ -66597,6 +68003,7 @@ module Google
66597
68003
  @shutdown_timeout = args[:shutdown_timeout] if args.key?(:shutdown_timeout)
66598
68004
  @skip_guest_os_shutdown = args[:skip_guest_os_shutdown] if args.key?(:skip_guest_os_shutdown)
66599
68005
  @termination_time = args[:termination_time] if args.key?(:termination_time)
68006
+ @vsock_mode = args[:vsock_mode] if args.key?(:vsock_mode)
66600
68007
  @windows_license_optimization_mode = args[:windows_license_optimization_mode] if args.key?(:windows_license_optimization_mode)
66601
68008
  end
66602
68009
  end
@@ -66685,6 +68092,25 @@ module Google
66685
68092
  end
66686
68093
  end
66687
68094
 
68095
+ # Message to control the enablement of the vsock device.
68096
+ class SchedulingVsockMode
68097
+ include Google::Apis::Core::Hashable
68098
+
68099
+ #
68100
+ # Corresponds to the JSON property `mode`
68101
+ # @return [String]
68102
+ attr_accessor :mode
68103
+
68104
+ def initialize(**args)
68105
+ update!(**args)
68106
+ end
68107
+
68108
+ # Update properties of this object
68109
+ def update!(**args)
68110
+ @mode = args[:mode] if args.key?(:mode)
68111
+ end
68112
+ end
68113
+
66688
68114
  # An instance's screenshot.
66689
68115
  class Screenshot
66690
68116
  include Google::Apis::Core::Hashable
@@ -72785,8 +74211,7 @@ module Google
72785
74211
  class SslPolicyReference
72786
74212
  include Google::Apis::Core::Hashable
72787
74213
 
72788
- # URL of the SSL policy resource. Set this to empty string to clear any
72789
- # existing SSL policy associated with the target proxy resource.
74214
+ #
72790
74215
  # Corresponds to the JSON property `sslPolicy`
72791
74216
  # @return [String]
72792
74217
  attr_accessor :ssl_policy
@@ -84479,6 +85904,11 @@ module Google
84479
85904
  attr_accessor :identity_certificate_enabled
84480
85905
  alias_method :identity_certificate_enabled?, :identity_certificate_enabled
84481
85906
 
85907
+ #
85908
+ # Corresponds to the JSON property `identityType`
85909
+ # @return [String]
85910
+ attr_accessor :identity_type
85911
+
84482
85912
  def initialize(**args)
84483
85913
  update!(**args)
84484
85914
  end
@@ -84487,6 +85917,7 @@ module Google
84487
85917
  def update!(**args)
84488
85918
  @identity = args[:identity] if args.key?(:identity)
84489
85919
  @identity_certificate_enabled = args[:identity_certificate_enabled] if args.key?(:identity_certificate_enabled)
85920
+ @identity_type = args[:identity_type] if args.key?(:identity_type)
84490
85921
  end
84491
85922
  end
84492
85923