google-apis-compute_alpha 0.86.0 → 0.88.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -5493,7 +5493,8 @@ module Google
5493
5493
  class BgpRouteNetworkLayerReachabilityInformation
5494
5494
  include Google::Apis::Core::Hashable
5495
5495
 
5496
- # Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16.
5496
+ # Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16. Deprecated in
5497
+ # favor of prefix.
5497
5498
  # Corresponds to the JSON property `destination`
5498
5499
  # @return [String]
5499
5500
  attr_accessor :destination
@@ -5504,6 +5505,11 @@ module Google
5504
5505
  # @return [Fixnum]
5505
5506
  attr_accessor :path_id
5506
5507
 
5508
+ # Human readable CIDR notation for a prefix. E.g. 10.42.0.0/16.
5509
+ # Corresponds to the JSON property `prefix`
5510
+ # @return [String]
5511
+ attr_accessor :prefix
5512
+
5507
5513
  def initialize(**args)
5508
5514
  update!(**args)
5509
5515
  end
@@ -5512,6 +5518,7 @@ module Google
5512
5518
  def update!(**args)
5513
5519
  @destination = args[:destination] if args.key?(:destination)
5514
5520
  @path_id = args[:path_id] if args.key?(:path_id)
5521
+ @prefix = args[:prefix] if args.key?(:prefix)
5515
5522
  end
5516
5523
  end
5517
5524
 
@@ -5559,21 +5566,43 @@ module Google
5559
5566
  # project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:`emailid``: An
5560
5567
  # email address that represents a Google group. For example, `admins@example.com`
5561
5568
  # . * `domain:`domain``: The G Suite domain (primary) that represents all the
5562
- # users of that domain. For example, `google.com` or `example.com`. * `deleted:
5563
- # user:`emailid`?uid=`uniqueid``: An email address (plus unique identifier)
5564
- # representing a user that has been recently deleted. For example, `alice@
5565
- # example.com?uid=123456789012345678901`. If the user is recovered, this value
5566
- # reverts to `user:`emailid`` and the recovered user retains the role in the
5567
- # binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address
5568
- # (plus unique identifier) representing a service account that has been recently
5569
- # deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=
5569
+ # users of that domain. For example, `google.com` or `example.com`. * `principal:
5570
+ # //iam.googleapis.com/locations/global/workforcePools/`pool_id`/subject/`
5571
+ # subject_attribute_value``: A single identity in a workforce identity pool. * `
5572
+ # principalSet://iam.googleapis.com/locations/global/workforcePools/`pool_id`/
5573
+ # group/`group_id``: All workforce identities in a group. * `principalSet://iam.
5574
+ # googleapis.com/locations/global/workforcePools/`pool_id`/attribute.`
5575
+ # attribute_name`/`attribute_value``: All workforce identities with a specific
5576
+ # attribute value. * `principalSet://iam.googleapis.com/locations/global/
5577
+ # workforcePools/`pool_id`/*`: All identities in a workforce identity pool. * `
5578
+ # principal://iam.googleapis.com/projects/`project_number`/locations/global/
5579
+ # workloadIdentityPools/`pool_id`/subject/`subject_attribute_value``: A single
5580
+ # identity in a workload identity pool. * `principalSet://iam.googleapis.com/
5581
+ # projects/`project_number`/locations/global/workloadIdentityPools/`pool_id`/
5582
+ # group/`group_id``: A workload identity pool group. * `principalSet://iam.
5583
+ # googleapis.com/projects/`project_number`/locations/global/
5584
+ # workloadIdentityPools/`pool_id`/attribute.`attribute_name`/`attribute_value``:
5585
+ # All identities in a workload identity pool with a certain attribute. * `
5586
+ # principalSet://iam.googleapis.com/projects/`project_number`/locations/global/
5587
+ # workloadIdentityPools/`pool_id`/*`: All identities in a workload identity pool.
5588
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
5589
+ # identifier) representing a user that has been recently deleted. For example, `
5590
+ # alice@example.com?uid=123456789012345678901`. If the user is recovered, this
5591
+ # value reverts to `user:`emailid`` and the recovered user retains the role in
5592
+ # the binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email
5593
+ # address (plus unique identifier) representing a service account that has been
5594
+ # recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=
5570
5595
  # 123456789012345678901`. If the service account is undeleted, this value
5571
5596
  # reverts to `serviceAccount:`emailid`` and the undeleted service account
5572
5597
  # retains the role in the binding. * `deleted:group:`emailid`?uid=`uniqueid``:
5573
5598
  # An email address (plus unique identifier) representing a Google group that has
5574
5599
  # been recently deleted. For example, `admins@example.com?uid=
5575
5600
  # 123456789012345678901`. If the group is recovered, this value reverts to `
5576
- # group:`emailid`` and the recovered group retains the role in the binding.
5601
+ # group:`emailid`` and the recovered group retains the role in the binding. * `
5602
+ # deleted:principal://iam.googleapis.com/locations/global/workforcePools/`
5603
+ # pool_id`/subject/`subject_attribute_value``: Deleted single identity in a
5604
+ # workforce identity pool. For example, `deleted:principal://iam.googleapis.com/
5605
+ # locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
5577
5606
  # Corresponds to the JSON property `members`
5578
5607
  # @return [Array<String>]
5579
5608
  attr_accessor :members
@@ -6161,7 +6190,7 @@ module Google
6161
6190
  # @return [String]
6162
6191
  attr_accessor :region
6163
6192
 
6164
- # List of create-on-create reseravtions for this commitment.
6193
+ # List of create-on-create reservations for this commitment.
6165
6194
  # Corresponds to the JSON property `reservations`
6166
6195
  # @return [Array<Google::Apis::ComputeAlpha::Reservation>]
6167
6196
  attr_accessor :reservations
@@ -10571,14 +10600,12 @@ module Google
10571
10600
  attr_accessor :all_ports
10572
10601
  alias_method :all_ports?, :all_ports
10573
10602
 
10574
- # This field is used along with the backend_service field for internal load
10575
- # balancing or with the target field for internal TargetInstance. If set to true,
10576
- # clients can access the internal passthrough Network Load Balancers, the
10577
- # regional internal Application Load Balancer, and the regional internal proxy
10578
- # Network Load Balancer from all regions. If false, only allows access from the
10579
- # local region the load balancer is located at. Note that for INTERNAL_MANAGED
10580
- # forwarding rules, this field cannot be changed after the forwarding rule is
10581
- # created.
10603
+ # If set to true, clients can access the internal passthrough Network Load
10604
+ # Balancers, the regional internal Application Load Balancer, and the regional
10605
+ # internal proxy Network Load Balancer from all regions. If false, only allows
10606
+ # access from the local region the load balancer is located at. Note that for
10607
+ # INTERNAL_MANAGED forwarding rules, this field cannot be changed after the
10608
+ # forwarding rule is created.
10582
10609
  # Corresponds to the JSON property `allowGlobalAccess`
10583
10610
  # @return [Boolean]
10584
10611
  attr_accessor :allow_global_access
@@ -12482,8 +12509,9 @@ module Google
12482
12509
  # The ID of a supported feature. To add multiple values, use commas to separate
12483
12510
  # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
12484
12511
  # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE -
12485
- # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE For more
12486
- # information, see Enabling guest operating system features.
12512
+ # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE -
12513
+ # TDX_CAPABLE - IDPF For more information, see Enabling guest operating system
12514
+ # features.
12487
12515
  # Corresponds to the JSON property `type`
12488
12516
  # @return [String]
12489
12517
  attr_accessor :type
@@ -13853,6 +13881,16 @@ module Google
13853
13881
  # @return [String]
13854
13882
  attr_accessor :ip_address
13855
13883
 
13884
+ #
13885
+ # Corresponds to the JSON property `ipv6Address`
13886
+ # @return [String]
13887
+ attr_accessor :ipv6_address
13888
+
13889
+ # Health state of the IPv6 address of the instance.
13890
+ # Corresponds to the JSON property `ipv6HealthState`
13891
+ # @return [String]
13892
+ attr_accessor :ipv6_health_state
13893
+
13856
13894
  # The named port of the instance group, not necessarily the port that is health-
13857
13895
  # checked.
13858
13896
  # Corresponds to the JSON property `port`
@@ -13881,6 +13919,8 @@ module Google
13881
13919
  @health_state = args[:health_state] if args.key?(:health_state)
13882
13920
  @instance = args[:instance] if args.key?(:instance)
13883
13921
  @ip_address = args[:ip_address] if args.key?(:ip_address)
13922
+ @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
13923
+ @ipv6_health_state = args[:ipv6_health_state] if args.key?(:ipv6_health_state)
13884
13924
  @port = args[:port] if args.key?(:port)
13885
13925
  @weight = args[:weight] if args.key?(:weight)
13886
13926
  @weight_error = args[:weight_error] if args.key?(:weight_error)
@@ -17766,8 +17806,10 @@ module Google
17766
17806
  class InstanceGroupManagerResizeRequestStatus
17767
17807
  include Google::Apis::Core::Hashable
17768
17808
 
17769
- # Errors encountered during the queueing or provisioning phases of the
17770
- # ResizeRequest.
17809
+ # [Output only] Fatal errors encountered during the queueing or provisioning
17810
+ # phases of the ResizeRequest that caused the transition to the FAILED state. As
17811
+ # a contrary to the last_attempt errors, this field is final and errors are
17812
+ # never removed from here, as the RR is not going to retry.
17771
17813
  # Corresponds to the JSON property `error`
17772
17814
  # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerResizeRequestStatus::Error]
17773
17815
  attr_accessor :error
@@ -17787,8 +17829,10 @@ module Google
17787
17829
  @queuing_policy = args[:queuing_policy] if args.key?(:queuing_policy)
17788
17830
  end
17789
17831
 
17790
- # Errors encountered during the queueing or provisioning phases of the
17791
- # ResizeRequest.
17832
+ # [Output only] Fatal errors encountered during the queueing or provisioning
17833
+ # phases of the ResizeRequest that caused the transition to the FAILED state. As
17834
+ # a contrary to the last_attempt errors, this field is final and errors are
17835
+ # never removed from here, as the RR is not going to retry.
17792
17836
  class Error
17793
17837
  include Google::Apis::Core::Hashable
17794
17838
 
@@ -18019,7 +18063,10 @@ module Google
18019
18063
  class InstanceGroupManagerStandbyPolicy
18020
18064
  include Google::Apis::Core::Hashable
18021
18065
 
18022
- #
18066
+ # Specifies the number of seconds that the MIG should wait to suspend or stop a
18067
+ # VM after that VM was created. The initial delay gives the initialization
18068
+ # script the time to prepare your VM for a quick scale out. The value of initial
18069
+ # delay must be between 0 and 3600 seconds. The default value is 0.
18023
18070
  # Corresponds to the JSON property `initialDelaySec`
18024
18071
  # @return [Fixnum]
18025
18072
  attr_accessor :initial_delay_sec
@@ -20494,25 +20541,6 @@ module Google
20494
20541
  end
20495
20542
  end
20496
20543
 
20497
- #
20498
- class InstancesAddNetworkInterfaceRequest
20499
- include Google::Apis::Core::Hashable
20500
-
20501
- # A network interface resource attached to an instance.
20502
- # Corresponds to the JSON property `network_interface`
20503
- # @return [Google::Apis::ComputeAlpha::NetworkInterface]
20504
- attr_accessor :network_interface
20505
-
20506
- def initialize(**args)
20507
- update!(**args)
20508
- end
20509
-
20510
- # Update properties of this object
20511
- def update!(**args)
20512
- @network_interface = args[:network_interface] if args.key?(:network_interface)
20513
- end
20514
- end
20515
-
20516
20544
  #
20517
20545
  class InstancesAddResourcePoliciesRequest
20518
20546
  include Google::Apis::Core::Hashable
@@ -21285,55 +21313,6 @@ module Google
21285
21313
  end
21286
21314
  end
21287
21315
 
21288
- #
21289
- class InstantSnapshotExportParams
21290
- include Google::Apis::Core::Hashable
21291
-
21292
- # An optional base instant snapshot that this resource is compared against. If
21293
- # not specified, all blocks of this resource are exported. The base instant
21294
- # snapshot and this resource must be created from the same disk. The base
21295
- # instant snapshot must be created earlier in time than this resource.
21296
- # Corresponds to the JSON property `baseInstantSnapshot`
21297
- # @return [String]
21298
- attr_accessor :base_instant_snapshot
21299
-
21300
- # The name of an existing bucket in Cloud Storage where the changed blocks will
21301
- # be stored. The Google Service Account must have read and write access to this
21302
- # bucket. The bucket has to be in the same region as this resource.
21303
- # Corresponds to the JSON property `bucketName`
21304
- # @return [String]
21305
- attr_accessor :bucket_name
21306
-
21307
- # Encryption key used to encrypt the instant snapshot.
21308
- # Corresponds to the JSON property `encryptionKey`
21309
- # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
21310
- attr_accessor :encryption_key
21311
-
21312
- # Name of the output Bigstore object storing the changed blocks. Object name
21313
- # must be less than 1024 bytes in length.
21314
- # Corresponds to the JSON property `objectName`
21315
- # @return [String]
21316
- attr_accessor :object_name
21317
-
21318
- # The format of the output file.
21319
- # Corresponds to the JSON property `outputType`
21320
- # @return [String]
21321
- attr_accessor :output_type
21322
-
21323
- def initialize(**args)
21324
- update!(**args)
21325
- end
21326
-
21327
- # Update properties of this object
21328
- def update!(**args)
21329
- @base_instant_snapshot = args[:base_instant_snapshot] if args.key?(:base_instant_snapshot)
21330
- @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
21331
- @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
21332
- @object_name = args[:object_name] if args.key?(:object_name)
21333
- @output_type = args[:output_type] if args.key?(:output_type)
21334
- end
21335
- end
21336
-
21337
21316
  # Contains a list of InstantSnapshot resources.
21338
21317
  class InstantSnapshotList
21339
21318
  include Google::Apis::Core::Hashable
@@ -21470,25 +21449,6 @@ module Google
21470
21449
  end
21471
21450
  end
21472
21451
 
21473
- #
21474
- class InstantSnapshotsExportRequest
21475
- include Google::Apis::Core::Hashable
21476
-
21477
- # Parameters to export the changed blocks.
21478
- # Corresponds to the JSON property `exportParams`
21479
- # @return [Google::Apis::ComputeAlpha::InstantSnapshotExportParams]
21480
- attr_accessor :export_params
21481
-
21482
- def initialize(**args)
21483
- update!(**args)
21484
- end
21485
-
21486
- # Update properties of this object
21487
- def update!(**args)
21488
- @export_params = args[:export_params] if args.key?(:export_params)
21489
- end
21490
- end
21491
-
21492
21452
  #
21493
21453
  class InstantSnapshotsScopedList
21494
21454
  include Google::Apis::Core::Hashable
@@ -22068,6 +22028,13 @@ module Google
22068
22028
  # @return [Fixnum]
22069
22029
  attr_accessor :mtu
22070
22030
 
22031
+ # Whether or not to permit multicast traffic for this attachment. Multicast
22032
+ # packets will be dropped if this is not enabled.
22033
+ # Corresponds to the JSON property `multicastEnabled`
22034
+ # @return [Boolean]
22035
+ attr_accessor :multicast_enabled
22036
+ alias_method :multicast_enabled?, :multicast_enabled
22037
+
22071
22038
  # Name of the resource. Provided by the client when the resource is created. The
22072
22039
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
22073
22040
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -22237,6 +22204,7 @@ module Google
22237
22204
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
22238
22205
  @labels = args[:labels] if args.key?(:labels)
22239
22206
  @mtu = args[:mtu] if args.key?(:mtu)
22207
+ @multicast_enabled = args[:multicast_enabled] if args.key?(:multicast_enabled)
22240
22208
  @name = args[:name] if args.key?(:name)
22241
22209
  @operational_status = args[:operational_status] if args.key?(:operational_status)
22242
22210
  @pairing_key = args[:pairing_key] if args.key?(:pairing_key)
@@ -27526,10 +27494,12 @@ module Google
27526
27494
  # @return [String]
27527
27495
  attr_accessor :fqdn
27528
27496
 
27529
- # The name for a specific VM instance that the IP address belongs to. This is
27530
- # required for network endpoints of type GCE_VM_IP_PORT. The instance must be in
27531
- # the same zone of network endpoint group. The name must be 1-63 characters long,
27532
- # and comply with RFC1035.
27497
+ # The name or a URL of a specific VM instance that the IP address belongs to.
27498
+ # This is required for network endpoints of type GCE_VM_IP_PORT. The instance
27499
+ # must be in the same zone of network endpoint group (for zonal NEGs) or in the
27500
+ # zone within the region of the NEG (for regional NEGs). The name must be 1-63
27501
+ # characters long, and comply with RFC1035 or be a valid URL pointing to an
27502
+ # existing instance.
27533
27503
  # Corresponds to the JSON property `instance`
27534
27504
  # @return [String]
27535
27505
  attr_accessor :instance
@@ -31570,7 +31540,8 @@ module Google
31570
31540
  # global operations, use the `globalOperations` resource. - For regional
31571
31541
  # operations, use the `regionOperations` resource. - For zonal operations, use
31572
31542
  # the `zoneOperations` resource. For more information, read Global, Regional,
31573
- # and Zonal Resources.
31543
+ # and Zonal Resources. Note that completed Operation resources have a limited
31544
+ # retention period.
31574
31545
  class Operation
31575
31546
  include Google::Apis::Core::Hashable
31576
31547
 
@@ -32740,15 +32711,17 @@ module Google
32740
32711
 
32741
32712
  # Protocols that apply as filter on mirrored traffic. If no protocols are
32742
32713
  # specified, all traffic that matches the specified CIDR ranges is mirrored. If
32743
- # neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.
32714
+ # neither cidrRanges nor IPProtocols is specified, all IPv4 traffic is mirrored.
32744
32715
  # Corresponds to the JSON property `IPProtocols`
32745
32716
  # @return [Array<String>]
32746
32717
  attr_accessor :ip_protocols
32747
32718
 
32748
- # IP CIDR ranges that apply as filter on the source (ingress) or destination (
32749
- # egress) IP in the IP header. Only IPv4 is supported. If no ranges are
32750
- # specified, all traffic that matches the specified IPProtocols is mirrored. If
32751
- # neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.
32719
+ # One or more IPv4 or IPv6 CIDR ranges that apply as filter on the source (
32720
+ # ingress) or destination (egress) IP in the IP header. If no ranges are
32721
+ # specified, all IPv4 traffic that matches the specified IPProtocols is mirrored.
32722
+ # If neither cidrRanges nor IPProtocols is specified, all IPv4 traffic is
32723
+ # mirrored. To mirror all IPv4 and IPv6 traffic, use "0.0.0.0/0,::/0". Note:
32724
+ # Support for IPv6 traffic is in preview.
32752
32725
  # Corresponds to the JSON property `cidrRanges`
32753
32726
  # @return [Array<String>]
32754
32727
  attr_accessor :cidr_ranges
@@ -37165,25 +37138,6 @@ module Google
37165
37138
  end
37166
37139
  end
37167
37140
 
37168
- #
37169
- class RegionInstantSnapshotsExportRequest
37170
- include Google::Apis::Core::Hashable
37171
-
37172
- # Parameters to export the changed blocks.
37173
- # Corresponds to the JSON property `exportParams`
37174
- # @return [Google::Apis::ComputeAlpha::InstantSnapshotExportParams]
37175
- attr_accessor :export_params
37176
-
37177
- def initialize(**args)
37178
- update!(**args)
37179
- end
37180
-
37181
- # Update properties of this object
37182
- def update!(**args)
37183
- @export_params = args[:export_params] if args.key?(:export_params)
37184
- end
37185
- end
37186
-
37187
37141
  # Contains a list of region resources.
37188
37142
  class RegionList
37189
37143
  include Google::Apis::Core::Hashable
@@ -42785,7 +42739,7 @@ module Google
42785
42739
  # @return [String]
42786
42740
  attr_accessor :description
42787
42741
 
42788
- # User-provided name of the Organization security plicy. The name should be
42742
+ # User-provided name of the organization security policy. The name should be
42789
42743
  # unique in the organization in which the security policy is created. This
42790
42744
  # should only be used when SecurityPolicyType is FIREWALL. The name must be 1-63
42791
42745
  # characters long, and comply with https://www.ietf.org/rfc/rfc1035.txt.
@@ -43841,7 +43795,7 @@ module Google
43841
43795
  include Google::Apis::Core::Hashable
43842
43796
 
43843
43797
  # reCAPTCHA configuration options to be applied for the rule. If the rule does
43844
- # not evaluate reCAPTCHA tokens, this field will have no effect.
43798
+ # not evaluate reCAPTCHA tokens, this field has no effect.
43845
43799
  # Corresponds to the JSON property `recaptchaOptions`
43846
43800
  # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions]
43847
43801
  attr_accessor :recaptcha_options
@@ -46226,6 +46180,12 @@ module Google
46226
46180
  class SnapshotSettings
46227
46181
  include Google::Apis::Core::Hashable
46228
46182
 
46183
+ # (Regional snapshots use only)Policy of which location is allowed to access
46184
+ # snapshot.
46185
+ # Corresponds to the JSON property `accessLocation`
46186
+ # @return [Google::Apis::ComputeAlpha::SnapshotSettingsAccessLocation]
46187
+ attr_accessor :access_location
46188
+
46229
46189
  # Policy of which storage location is going to be resolved, and additional data
46230
46190
  # that particularizes how the policy is going to be carried out.
46231
46191
  # Corresponds to the JSON property `storageLocation`
@@ -46238,10 +46198,49 @@ module Google
46238
46198
 
46239
46199
  # Update properties of this object
46240
46200
  def update!(**args)
46201
+ @access_location = args[:access_location] if args.key?(:access_location)
46241
46202
  @storage_location = args[:storage_location] if args.key?(:storage_location)
46242
46203
  end
46243
46204
  end
46244
46205
 
46206
+ #
46207
+ class SnapshotSettingsAccessLocation
46208
+ include Google::Apis::Core::Hashable
46209
+
46210
+ # List of regions that can restore a regional snapshot from the current region
46211
+ # Corresponds to the JSON property `locations`
46212
+ # @return [Hash<String,Google::Apis::ComputeAlpha::SnapshotSettingsAccessLocationAccessLocationPreference>]
46213
+ attr_accessor :locations
46214
+
46215
+ def initialize(**args)
46216
+ update!(**args)
46217
+ end
46218
+
46219
+ # Update properties of this object
46220
+ def update!(**args)
46221
+ @locations = args[:locations] if args.key?(:locations)
46222
+ end
46223
+ end
46224
+
46225
+ # A structure for specifying an allowed target region.
46226
+ class SnapshotSettingsAccessLocationAccessLocationPreference
46227
+ include Google::Apis::Core::Hashable
46228
+
46229
+ # Accessible region name
46230
+ # Corresponds to the JSON property `region`
46231
+ # @return [String]
46232
+ attr_accessor :region
46233
+
46234
+ def initialize(**args)
46235
+ update!(**args)
46236
+ end
46237
+
46238
+ # Update properties of this object
46239
+ def update!(**args)
46240
+ @region = args[:region] if args.key?(:region)
46241
+ end
46242
+ end
46243
+
46245
46244
  #
46246
46245
  class SnapshotSettingsStorageLocationSettings
46247
46246
  include Google::Apis::Core::Hashable
@@ -47854,13 +47853,29 @@ module Google
47854
47853
  # @return [String]
47855
47854
  attr_accessor :performance_provisioning_type
47856
47855
 
47857
- # Provsioned IOPS of the storage pool.
47858
- # Corresponds to the JSON property `provisionedIops`
47856
+ # Size, in GiB, of the storage pool.
47857
+ # Corresponds to the JSON property `poolProvisionedCapacityGb`
47859
47858
  # @return [Fixnum]
47860
- attr_accessor :provisioned_iops
47859
+ attr_accessor :pool_provisioned_capacity_gb
47860
+
47861
+ # Provsioned IOPS of the storage pool. Only relevant if the storage pool type is
47862
+ # hyperdisk-balanced.
47863
+ # Corresponds to the JSON property `poolProvisionedIops`
47864
+ # @return [Fixnum]
47865
+ attr_accessor :pool_provisioned_iops
47861
47866
 
47862
47867
  # Provisioned throughput of the storage pool. Only relevant if the storage pool
47863
47868
  # type is hyperdisk-balanced or hyperdisk-throughput.
47869
+ # Corresponds to the JSON property `poolProvisionedThroughput`
47870
+ # @return [Fixnum]
47871
+ attr_accessor :pool_provisioned_throughput
47872
+
47873
+ # DEPRECATED -- use "pool provisioned IOPS".
47874
+ # Corresponds to the JSON property `provisionedIops`
47875
+ # @return [Fixnum]
47876
+ attr_accessor :provisioned_iops
47877
+
47878
+ # DEPRECATED -- use "pool provisioned throughput".
47864
47879
  # Corresponds to the JSON property `provisionedThroughput`
47865
47880
  # @return [Fixnum]
47866
47881
  attr_accessor :provisioned_throughput
@@ -47880,7 +47895,7 @@ module Google
47880
47895
  # @return [String]
47881
47896
  attr_accessor :self_link_with_id
47882
47897
 
47883
- # Size, in GiB, of the storage pool.
47898
+ # DEPRECATED -- use "pool provisioned capacity gb".
47884
47899
  # Corresponds to the JSON property `sizeGb`
47885
47900
  # @return [Fixnum]
47886
47901
  attr_accessor :size_gb
@@ -47924,6 +47939,9 @@ module Google
47924
47939
  @labels = args[:labels] if args.key?(:labels)
47925
47940
  @name = args[:name] if args.key?(:name)
47926
47941
  @performance_provisioning_type = args[:performance_provisioning_type] if args.key?(:performance_provisioning_type)
47942
+ @pool_provisioned_capacity_gb = args[:pool_provisioned_capacity_gb] if args.key?(:pool_provisioned_capacity_gb)
47943
+ @pool_provisioned_iops = args[:pool_provisioned_iops] if args.key?(:pool_provisioned_iops)
47944
+ @pool_provisioned_throughput = args[:pool_provisioned_throughput] if args.key?(:pool_provisioned_throughput)
47927
47945
  @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
47928
47946
  @provisioned_throughput = args[:provisioned_throughput] if args.key?(:provisioned_throughput)
47929
47947
  @resource_status = args[:resource_status] if args.key?(:resource_status)
@@ -48413,45 +48431,93 @@ module Google
48413
48431
  class StoragePoolResourceStatus
48414
48432
  include Google::Apis::Core::Hashable
48415
48433
 
48416
- # [Output Only] Sum of all the disks' provisioned IOPS.
48434
+ # DEPRECATED -- use "total_provisioned_disk_iops".
48417
48435
  # Corresponds to the JSON property `aggregateDiskProvisionedIops`
48418
48436
  # @return [Fixnum]
48419
48437
  attr_accessor :aggregate_disk_provisioned_iops
48420
48438
 
48421
- # [Output Only] Sum of all the capacity provisioned in disks in this storage
48422
- # pool. A disk's provisioned capacity is the same as its total capacity.
48439
+ # DEPRECATED -- use "total provisioned disk size gb".
48423
48440
  # Corresponds to the JSON property `aggregateDiskSizeGb`
48424
48441
  # @return [Fixnum]
48425
48442
  attr_accessor :aggregate_disk_size_gb
48426
48443
 
48444
+ # [Output Only] Number of disks used.
48445
+ # Corresponds to the JSON property `diskCount`
48446
+ # @return [Fixnum]
48447
+ attr_accessor :disk_count
48448
+
48427
48449
  # [Output Only] Timestamp of the last successful resize in RFC3339 text format.
48428
48450
  # Corresponds to the JSON property `lastResizeTimestamp`
48429
48451
  # @return [String]
48430
48452
  attr_accessor :last_resize_timestamp
48431
48453
 
48432
- # [Output Only] Maximum allowed aggregate disk size in gigabytes.
48454
+ # DEPRECATED -- use "max provisioned disk size gb"
48433
48455
  # Corresponds to the JSON property `maxAggregateDiskSizeGb`
48434
48456
  # @return [Fixnum]
48435
48457
  attr_accessor :max_aggregate_disk_size_gb
48436
48458
 
48437
- # [Output Only] Number of disks used.
48459
+ # [Output Only] Maximum allowed aggregate disk size in gigabytes.
48460
+ # Corresponds to the JSON property `maxTotalProvisionedDiskCapacityGb`
48461
+ # @return [Fixnum]
48462
+ attr_accessor :max_total_provisioned_disk_capacity_gb
48463
+
48464
+ # DEPRECATED -- use "disk count".
48438
48465
  # Corresponds to the JSON property `numberOfDisks`
48439
48466
  # @return [Fixnum]
48440
48467
  attr_accessor :number_of_disks
48441
48468
 
48442
48469
  # [Output Only] Space used by data stored in disks within the storage pool (in
48443
- # bytes).
48470
+ # bytes). This will reflect the total number of bytes written to the disks in
48471
+ # the pool, in contrast to the capacity of those disks.
48472
+ # Corresponds to the JSON property `poolUsedCapacityBytes`
48473
+ # @return [Fixnum]
48474
+ attr_accessor :pool_used_capacity_bytes
48475
+
48476
+ # Sum of all the disks' provisioned IOPS, minus some amount that is allowed per
48477
+ # disk that is not counted towards pool's IOPS capacity.
48478
+ # Corresponds to the JSON property `poolUsedIops`
48479
+ # @return [Fixnum]
48480
+ attr_accessor :pool_used_iops
48481
+
48482
+ # [Output Only] Sum of all the disks' provisioned throughput in MB/s.
48483
+ # Corresponds to the JSON property `poolUsedThroughput`
48484
+ # @return [Fixnum]
48485
+ attr_accessor :pool_used_throughput
48486
+
48487
+ # [Output Only] Amount of data written into the pool, before it is compacted.
48488
+ # Corresponds to the JSON property `poolUserWrittenBytes`
48489
+ # @return [Fixnum]
48490
+ attr_accessor :pool_user_written_bytes
48491
+
48492
+ # [Output Only] Sum of all the capacity provisioned in disks in this storage
48493
+ # pool. A disk's provisioned capacity is the same as its total capacity.
48494
+ # Corresponds to the JSON property `totalProvisionedDiskCapacityGb`
48495
+ # @return [Fixnum]
48496
+ attr_accessor :total_provisioned_disk_capacity_gb
48497
+
48498
+ # [Output Only] Sum of all the disks' provisioned IOPS.
48499
+ # Corresponds to the JSON property `totalProvisionedDiskIops`
48500
+ # @return [Fixnum]
48501
+ attr_accessor :total_provisioned_disk_iops
48502
+
48503
+ # [Output Only] Sum of all the disks' provisioned throughput in MB/s, minus some
48504
+ # amount that is allowed per disk that is not counted towards pool's throughput
48505
+ # capacity.
48506
+ # Corresponds to the JSON property `totalProvisionedDiskThroughput`
48507
+ # @return [Fixnum]
48508
+ attr_accessor :total_provisioned_disk_throughput
48509
+
48510
+ # DEPRECATED -- use "pool used capacity".
48444
48511
  # Corresponds to the JSON property `usedBytes`
48445
48512
  # @return [Fixnum]
48446
48513
  attr_accessor :used_bytes
48447
48514
 
48448
- # [Output Only] Space used by compressed and deduped data stored in disks within
48449
- # the storage pool (in bytes).
48515
+ # DEPRECATED -- do not use, will be removed.
48450
48516
  # Corresponds to the JSON property `usedReducedBytes`
48451
48517
  # @return [Fixnum]
48452
48518
  attr_accessor :used_reduced_bytes
48453
48519
 
48454
- # [Output Only] Sum of all the disks' provisioned throughput in MB/s.
48520
+ # DEPRECATED -- use "pool used throughput".
48455
48521
  # Corresponds to the JSON property `usedThroughput`
48456
48522
  # @return [Fixnum]
48457
48523
  attr_accessor :used_throughput
@@ -48464,9 +48530,18 @@ module Google
48464
48530
  def update!(**args)
48465
48531
  @aggregate_disk_provisioned_iops = args[:aggregate_disk_provisioned_iops] if args.key?(:aggregate_disk_provisioned_iops)
48466
48532
  @aggregate_disk_size_gb = args[:aggregate_disk_size_gb] if args.key?(:aggregate_disk_size_gb)
48533
+ @disk_count = args[:disk_count] if args.key?(:disk_count)
48467
48534
  @last_resize_timestamp = args[:last_resize_timestamp] if args.key?(:last_resize_timestamp)
48468
48535
  @max_aggregate_disk_size_gb = args[:max_aggregate_disk_size_gb] if args.key?(:max_aggregate_disk_size_gb)
48536
+ @max_total_provisioned_disk_capacity_gb = args[:max_total_provisioned_disk_capacity_gb] if args.key?(:max_total_provisioned_disk_capacity_gb)
48469
48537
  @number_of_disks = args[:number_of_disks] if args.key?(:number_of_disks)
48538
+ @pool_used_capacity_bytes = args[:pool_used_capacity_bytes] if args.key?(:pool_used_capacity_bytes)
48539
+ @pool_used_iops = args[:pool_used_iops] if args.key?(:pool_used_iops)
48540
+ @pool_used_throughput = args[:pool_used_throughput] if args.key?(:pool_used_throughput)
48541
+ @pool_user_written_bytes = args[:pool_user_written_bytes] if args.key?(:pool_user_written_bytes)
48542
+ @total_provisioned_disk_capacity_gb = args[:total_provisioned_disk_capacity_gb] if args.key?(:total_provisioned_disk_capacity_gb)
48543
+ @total_provisioned_disk_iops = args[:total_provisioned_disk_iops] if args.key?(:total_provisioned_disk_iops)
48544
+ @total_provisioned_disk_throughput = args[:total_provisioned_disk_throughput] if args.key?(:total_provisioned_disk_throughput)
48470
48545
  @used_bytes = args[:used_bytes] if args.key?(:used_bytes)
48471
48546
  @used_reduced_bytes = args[:used_reduced_bytes] if args.key?(:used_reduced_bytes)
48472
48547
  @used_throughput = args[:used_throughput] if args.key?(:used_throughput)
@@ -48504,32 +48579,38 @@ module Google
48504
48579
  # @return [String]
48505
48580
  attr_accessor :kind
48506
48581
 
48582
+ # [Output Only] Maximum storage pool size in GB.
48583
+ # Corresponds to the JSON property `maxPoolProvisionedCapacityGb`
48584
+ # @return [Fixnum]
48585
+ attr_accessor :max_pool_provisioned_capacity_gb
48586
+
48507
48587
  # [Output Only] Maximum provisioned IOPS.
48508
- # Corresponds to the JSON property `maxProvisionedIops`
48588
+ # Corresponds to the JSON property `maxPoolProvisionedIops`
48509
48589
  # @return [Fixnum]
48510
- attr_accessor :max_provisioned_iops
48590
+ attr_accessor :max_pool_provisioned_iops
48511
48591
 
48512
48592
  # [Output Only] Maximum provisioned throughput.
48513
- # Corresponds to the JSON property `maxProvisionedThroughput`
48593
+ # Corresponds to the JSON property `maxPoolProvisionedThroughput`
48514
48594
  # @return [Fixnum]
48515
- attr_accessor :max_provisioned_throughput
48595
+ attr_accessor :max_pool_provisioned_throughput
48516
48596
 
48517
- # [Output Only] Maximum storage pool size in GB.
48518
- # Corresponds to the JSON property `maxSizeGb`
48597
+ # [Output Only] Minimum storage pool size in GB.
48598
+ # Corresponds to the JSON property `minPoolProvisionedCapacityGb`
48519
48599
  # @return [Fixnum]
48520
- attr_accessor :max_size_gb
48600
+ attr_accessor :min_pool_provisioned_capacity_gb
48521
48601
 
48522
48602
  # [Output Only] Minimum provisioned IOPS.
48523
- # Corresponds to the JSON property `minProvisionedIops`
48603
+ # Corresponds to the JSON property `minPoolProvisionedIops`
48524
48604
  # @return [Fixnum]
48525
- attr_accessor :min_provisioned_iops
48605
+ attr_accessor :min_pool_provisioned_iops
48526
48606
 
48527
48607
  # [Output Only] Minimum provisioned throughput.
48528
- # Corresponds to the JSON property `minProvisionedThroughput`
48608
+ # Corresponds to the JSON property `minPoolProvisionedThroughput`
48529
48609
  # @return [Fixnum]
48530
- attr_accessor :min_provisioned_throughput
48610
+ attr_accessor :min_pool_provisioned_throughput
48531
48611
 
48532
- # [Output Only] Minimum storage pool size in GB.
48612
+ # [Deprecated] This field is deprecated. Use minPoolProvisionedCapacityGb
48613
+ # instead.
48533
48614
  # Corresponds to the JSON property `minSizeGb`
48534
48615
  # @return [Fixnum]
48535
48616
  attr_accessor :min_size_gb
@@ -48572,11 +48653,12 @@ module Google
48572
48653
  @description = args[:description] if args.key?(:description)
48573
48654
  @id = args[:id] if args.key?(:id)
48574
48655
  @kind = args[:kind] if args.key?(:kind)
48575
- @max_provisioned_iops = args[:max_provisioned_iops] if args.key?(:max_provisioned_iops)
48576
- @max_provisioned_throughput = args[:max_provisioned_throughput] if args.key?(:max_provisioned_throughput)
48577
- @max_size_gb = args[:max_size_gb] if args.key?(:max_size_gb)
48578
- @min_provisioned_iops = args[:min_provisioned_iops] if args.key?(:min_provisioned_iops)
48579
- @min_provisioned_throughput = args[:min_provisioned_throughput] if args.key?(:min_provisioned_throughput)
48656
+ @max_pool_provisioned_capacity_gb = args[:max_pool_provisioned_capacity_gb] if args.key?(:max_pool_provisioned_capacity_gb)
48657
+ @max_pool_provisioned_iops = args[:max_pool_provisioned_iops] if args.key?(:max_pool_provisioned_iops)
48658
+ @max_pool_provisioned_throughput = args[:max_pool_provisioned_throughput] if args.key?(:max_pool_provisioned_throughput)
48659
+ @min_pool_provisioned_capacity_gb = args[:min_pool_provisioned_capacity_gb] if args.key?(:min_pool_provisioned_capacity_gb)
48660
+ @min_pool_provisioned_iops = args[:min_pool_provisioned_iops] if args.key?(:min_pool_provisioned_iops)
48661
+ @min_pool_provisioned_throughput = args[:min_pool_provisioned_throughput] if args.key?(:min_pool_provisioned_throughput)
48580
48662
  @min_size_gb = args[:min_size_gb] if args.key?(:min_size_gb)
48581
48663
  @name = args[:name] if args.key?(:name)
48582
48664
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -49209,18 +49291,15 @@ module Google
49209
49291
  attr_accessor :private_ipv6_google_access
49210
49292
 
49211
49293
  # The purpose of the resource. This field can be either PRIVATE,
49212
- # REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
49213
- # INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created
49214
- # subnets or subnets that are automatically created in auto mode networks. A
49215
- # subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork
49216
- # that is reserved for regional Envoy-based load balancers. A subnet with
49217
- # purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using
49218
- # Private Service Connect. A subnet with purpose set to
49219
- # INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by
49220
- # regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is
49221
- # the preferred setting for all regional Envoy load balancers. If unspecified,
49222
- # the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't
49223
- # supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
49294
+ # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
49295
+ # PRIVATE is the default purpose for user-created subnets or subnets that are
49296
+ # automatically created in auto mode networks. Subnets with purpose set to
49297
+ # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks
49298
+ # that are reserved for Envoy-based load balancers. A subnet with purpose set to
49299
+ # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
49300
+ # Connect. If unspecified, the subnet purpose defaults to PRIVATE. The
49301
+ # enableFlowLogs field isn't supported if the subnet purpose field is set to
49302
+ # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.
49224
49303
  # Corresponds to the JSON property `purpose`
49225
49304
  # @return [String]
49226
49305
  attr_accessor :purpose
@@ -49236,11 +49315,12 @@ module Google
49236
49315
  # @return [String]
49237
49316
  attr_accessor :reserved_internal_range
49238
49317
 
49239
- # The role of subnetwork. Currently, this field is only used when purpose =
49240
- # REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE
49241
- # subnetwork is one that is currently being used for Envoy-based load balancers
49242
- # in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE
49243
- # or is currently draining. This field can be updated with a patch request.
49318
+ # The role of subnetwork. Currently, this field is only used when purpose is set
49319
+ # to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to
49320
+ # ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for
49321
+ # Envoy-based load balancers in a region. A BACKUP subnetwork is one that is
49322
+ # ready to be promoted to ACTIVE or is currently draining. This field can be
49323
+ # updated with a patch request.
49244
49324
  # Corresponds to the JSON property `role`
49245
49325
  # @return [String]
49246
49326
  attr_accessor :role
@@ -54716,27 +54796,25 @@ module Google
54716
54796
  attr_accessor :network
54717
54797
 
54718
54798
  # The purpose of the resource. This field can be either PRIVATE,
54719
- # REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
54720
- # INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created
54721
- # subnets or subnets that are automatically created in auto mode networks. A
54722
- # subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork
54723
- # that is reserved for regional Envoy-based load balancers. A subnet with
54724
- # purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using
54725
- # Private Service Connect. A subnet with purpose set to
54726
- # INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by
54727
- # regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is
54728
- # the preferred setting for all regional Envoy load balancers. If unspecified,
54729
- # the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't
54730
- # supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
54799
+ # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
54800
+ # PRIVATE is the default purpose for user-created subnets or subnets that are
54801
+ # automatically created in auto mode networks. Subnets with purpose set to
54802
+ # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks
54803
+ # that are reserved for Envoy-based load balancers. A subnet with purpose set to
54804
+ # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
54805
+ # Connect. If unspecified, the subnet purpose defaults to PRIVATE. The
54806
+ # enableFlowLogs field isn't supported if the subnet purpose field is set to
54807
+ # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.
54731
54808
  # Corresponds to the JSON property `purpose`
54732
54809
  # @return [String]
54733
54810
  attr_accessor :purpose
54734
54811
 
54735
- # The role of subnetwork. Currently, this field is only used when purpose =
54736
- # REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE
54737
- # subnetwork is one that is currently being used for Envoy-based load balancers
54738
- # in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE
54739
- # or is currently draining. This field can be updated with a patch request.
54812
+ # The role of subnetwork. Currently, this field is only used when purpose is set
54813
+ # to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to
54814
+ # ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for
54815
+ # Envoy-based load balancers in a region. A BACKUP subnetwork is one that is
54816
+ # ready to be promoted to ACTIVE or is currently draining. This field can be
54817
+ # updated with a patch request.
54740
54818
  # Corresponds to the JSON property `role`
54741
54819
  # @return [String]
54742
54820
  attr_accessor :role