google-apis-compute_beta 0.92.0 → 0.94.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.
@@ -1830,6 +1830,15 @@ module Google
1830
1830
  # @return [Google::Apis::ComputeBeta::CustomerEncryptionKey]
1831
1831
  attr_accessor :source_snapshot_encryption_key
1832
1832
 
1833
+ # The storage pool in which the new disk is created. You can provide this as a
1834
+ # partial or full URL to the resource. For example, the following are valid
1835
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
1836
+ # storagePools/storagePool - projects/project/zones/zone/storagePools/
1837
+ # storagePool - zones/zone/storagePools/storagePool
1838
+ # Corresponds to the JSON property `storagePool`
1839
+ # @return [String]
1840
+ attr_accessor :storage_pool
1841
+
1833
1842
  def initialize(**args)
1834
1843
  update!(**args)
1835
1844
  end
@@ -1857,6 +1866,7 @@ module Google
1857
1866
  @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot)
1858
1867
  @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
1859
1868
  @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key)
1869
+ @storage_pool = args[:storage_pool] if args.key?(:storage_pool)
1860
1870
  end
1861
1871
  end
1862
1872
 
@@ -6922,6 +6932,15 @@ module Google
6922
6932
  # @return [String]
6923
6933
  attr_accessor :status
6924
6934
 
6935
+ # The storage pool in which the new disk is created. You can provide this as a
6936
+ # partial or full URL to the resource. For example, the following are valid
6937
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
6938
+ # storagePools/storagePool - projects/project/zones/zone/storagePools/
6939
+ # storagePool - zones/zone/storagePools/storagePool
6940
+ # Corresponds to the JSON property `storagePool`
6941
+ # @return [String]
6942
+ attr_accessor :storage_pool
6943
+
6925
6944
  # [Deprecated] Storage type of the persistent disk.
6926
6945
  # Corresponds to the JSON property `storageType`
6927
6946
  # @return [String]
@@ -7011,6 +7030,7 @@ module Google
7011
7030
  @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id)
7012
7031
  @source_storage_object = args[:source_storage_object] if args.key?(:source_storage_object)
7013
7032
  @status = args[:status] if args.key?(:status)
7033
+ @storage_pool = args[:storage_pool] if args.key?(:storage_pool)
7014
7034
  @storage_type = args[:storage_type] if args.key?(:storage_type)
7015
7035
  @type = args[:type] if args.key?(:type)
7016
7036
  @user_licenses = args[:user_licenses] if args.key?(:user_licenses)
@@ -11713,7 +11733,7 @@ module Google
11713
11733
  # The ID of a supported feature. To add multiple values, use commas to separate
11714
11734
  # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
11715
11735
  # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE -
11716
- # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE -
11736
+ # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE_V2 - SEV_SNP_CAPABLE -
11717
11737
  # TDX_CAPABLE - IDPF For more information, see Enabling guest operating system
11718
11738
  # features.
11719
11739
  # Corresponds to the JSON property `type`
@@ -12071,6 +12091,20 @@ module Google
12071
12091
  # @return [String]
12072
12092
  attr_accessor :self_link
12073
12093
 
12094
+ # The list of cloud regions from which health checks are performed. If any
12095
+ # regions are specified, then exactly 3 regions should be specified. The region
12096
+ # names must be valid names of GCP regions. This can only be set for global
12097
+ # health check. If this list is non-empty, then there are restrictions on what
12098
+ # other health check fields are supported and what other resources can use this
12099
+ # health check: - SSL, HTTP2, and GRPC protocols are not supported. - The TCP
12100
+ # request field is not supported. - The proxyHeader field for HTTP, HTTPS, and
12101
+ # TCP is not supported. - The checkIntervalSec field must be at least 30. - The
12102
+ # health check cannot be used with BackendService nor with managed instance
12103
+ # group auto-healing.
12104
+ # Corresponds to the JSON property `sourceRegions`
12105
+ # @return [Array<String>]
12106
+ attr_accessor :source_regions
12107
+
12074
12108
  #
12075
12109
  # Corresponds to the JSON property `sslHealthCheck`
12076
12110
  # @return [Google::Apis::ComputeBeta::SslHealthCheck]
@@ -12121,6 +12155,7 @@ module Google
12121
12155
  @name = args[:name] if args.key?(:name)
12122
12156
  @region = args[:region] if args.key?(:region)
12123
12157
  @self_link = args[:self_link] if args.key?(:self_link)
12158
+ @source_regions = args[:source_regions] if args.key?(:source_regions)
12124
12159
  @ssl_health_check = args[:ssl_health_check] if args.key?(:ssl_health_check)
12125
12160
  @tcp_health_check = args[:tcp_health_check] if args.key?(:tcp_health_check)
12126
12161
  @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec)
@@ -15819,6 +15854,11 @@ module Google
15819
15854
  # @return [Array<Google::Apis::ComputeBeta::NamedPort>]
15820
15855
  attr_accessor :named_ports
15821
15856
 
15857
+ # Input only additional params for instance group manager creation.
15858
+ # Corresponds to the JSON property `params`
15859
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerParams]
15860
+ attr_accessor :params
15861
+
15822
15862
  # [Output Only] The URL of the region where the managed instance group resides (
15823
15863
  # for regional resources).
15824
15864
  # Corresponds to the JSON property `region`
@@ -15930,6 +15970,7 @@ module Google
15930
15970
  @list_managed_instances_results = args[:list_managed_instances_results] if args.key?(:list_managed_instances_results)
15931
15971
  @name = args[:name] if args.key?(:name)
15932
15972
  @named_ports = args[:named_ports] if args.key?(:named_ports)
15973
+ @params = args[:params] if args.key?(:params)
15933
15974
  @region = args[:region] if args.key?(:region)
15934
15975
  @self_link = args[:self_link] if args.key?(:self_link)
15935
15976
  @service_account = args[:service_account] if args.key?(:service_account)
@@ -16441,6 +16482,28 @@ module Google
16441
16482
  end
16442
16483
  end
16443
16484
 
16485
+ # Input only additional params for instance group manager creation.
16486
+ class InstanceGroupManagerParams
16487
+ include Google::Apis::Core::Hashable
16488
+
16489
+ # Resource manager tags to be bound to the instance group manager. Tag keys and
16490
+ # values have the same definition as resource manager tags. Keys must be in the
16491
+ # format `tagKeys/123`, and values are in the format `tagValues/456`. The field
16492
+ # is allowed for INSERT only.
16493
+ # Corresponds to the JSON property `resourceManagerTags`
16494
+ # @return [Hash<String,String>]
16495
+ attr_accessor :resource_manager_tags
16496
+
16497
+ def initialize(**args)
16498
+ update!(**args)
16499
+ end
16500
+
16501
+ # Update properties of this object
16502
+ def update!(**args)
16503
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
16504
+ end
16505
+ end
16506
+
16444
16507
  # InstanceGroupManagerResizeRequest represents a request to create a number of
16445
16508
  # VMs: either immediately or by queuing the request for the specified time. This
16446
16509
  # resize request is nested under InstanceGroupManager and the VMs created by
@@ -22509,10 +22572,10 @@ module Google
22509
22572
 
22510
22573
  # [Output Only] Port pair remote location constraints, which can take one of the
22511
22574
  # following values: PORT_PAIR_UNCONSTRAINED_REMOTE_LOCATION,
22512
- # PORT_PAIR_MATCHING_REMOTE_LOCATION. GCP's API refers only to individual ports,
22513
- # but the UI uses this field when ordering a pair of ports, to prevent users
22514
- # from accidentally ordering something that is incompatible with their cloud
22515
- # provider. Specifically, when ordering a redundant pair of Cross-Cloud
22575
+ # PORT_PAIR_MATCHING_REMOTE_LOCATION. Google Cloud API refers only to individual
22576
+ # ports, but the UI uses this field when ordering a pair of ports, to prevent
22577
+ # users from accidentally ordering something that is incompatible with their
22578
+ # cloud provider. Specifically, when ordering a redundant pair of Cross-Cloud
22516
22579
  # Interconnect ports, and one of them uses a remote location with
22517
22580
  # portPairMatchingRemoteLocation set to matching, the UI requires that both
22518
22581
  # ports use the same remote location.
@@ -40543,6 +40606,19 @@ module Google
40543
40606
  # @return [String]
40544
40607
  attr_accessor :producer_forwarding_rule
40545
40608
 
40609
+ # The number of consumer Network Connectivity Center spokes that connected
40610
+ # Private Service Connect endpoints can be propagated to. This limit lets a
40611
+ # service producer indirectly limit how many propagated Private Service Connect
40612
+ # connections can be established to the producer's service attachment. If the
40613
+ # connection preference of the service attachment is ACCEPT_MANUAL, the limit
40614
+ # applies to each project or network that is listed in the consumer accept list.
40615
+ # If the connection preference of the service attachment is ACCEPT_AUTOMATIC,
40616
+ # the limit applies to each project that contains a connected endpoint. If
40617
+ # unspecified, the default propagated connection limit is 250.
40618
+ # Corresponds to the JSON property `propagatedConnectionLimit`
40619
+ # @return [Fixnum]
40620
+ attr_accessor :propagated_connection_limit
40621
+
40546
40622
  # [Output Only] An 128-bit global unique ID of the PSC service attachment.
40547
40623
  # Corresponds to the JSON property `pscServiceAttachmentId`
40548
40624
  # @return [Google::Apis::ComputeBeta::Uint128]
@@ -40608,6 +40684,7 @@ module Google
40608
40684
  @name = args[:name] if args.key?(:name)
40609
40685
  @nat_subnets = args[:nat_subnets] if args.key?(:nat_subnets)
40610
40686
  @producer_forwarding_rule = args[:producer_forwarding_rule] if args.key?(:producer_forwarding_rule)
40687
+ @propagated_connection_limit = args[:propagated_connection_limit] if args.key?(:propagated_connection_limit)
40611
40688
  @psc_service_attachment_id = args[:psc_service_attachment_id] if args.key?(:psc_service_attachment_id)
40612
40689
  @reconcile_connections = args[:reconcile_connections] if args.key?(:reconcile_connections)
40613
40690
  @region = args[:region] if args.key?(:region)
@@ -40754,6 +40831,12 @@ module Google
40754
40831
  # @return [String]
40755
40832
  attr_accessor :endpoint
40756
40833
 
40834
+ # The number of consumer Network Connectivity Center spokes that the connected
40835
+ # Private Service Connect endpoint has propagated to.
40836
+ # Corresponds to the JSON property `propagatedConnectionCount`
40837
+ # @return [Fixnum]
40838
+ attr_accessor :propagated_connection_count
40839
+
40757
40840
  # The PSC connection id of the connected endpoint.
40758
40841
  # Corresponds to the JSON property `pscConnectionId`
40759
40842
  # @return [Fixnum]
@@ -40772,6 +40855,7 @@ module Google
40772
40855
  def update!(**args)
40773
40856
  @consumer_network = args[:consumer_network] if args.key?(:consumer_network)
40774
40857
  @endpoint = args[:endpoint] if args.key?(:endpoint)
40858
+ @propagated_connection_count = args[:propagated_connection_count] if args.key?(:propagated_connection_count)
40775
40859
  @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
40776
40860
  @status = args[:status] if args.key?(:status)
40777
40861
  end
@@ -43294,6 +43378,1244 @@ module Google
43294
43378
  end
43295
43379
  end
43296
43380
 
43381
+ # Represents a zonal storage pool resource.
43382
+ class StoragePool
43383
+ include Google::Apis::Core::Hashable
43384
+
43385
+ # Provisioning type of the byte capacity of the pool.
43386
+ # Corresponds to the JSON property `capacityProvisioningType`
43387
+ # @return [String]
43388
+ attr_accessor :capacity_provisioning_type
43389
+
43390
+ # [Output Only] Creation timestamp in RFC3339 text format.
43391
+ # Corresponds to the JSON property `creationTimestamp`
43392
+ # @return [String]
43393
+ attr_accessor :creation_timestamp
43394
+
43395
+ # An optional description of this resource. Provide this property when you
43396
+ # create the resource.
43397
+ # Corresponds to the JSON property `description`
43398
+ # @return [String]
43399
+ attr_accessor :description
43400
+
43401
+ # [Output Only] The unique identifier for the resource. This identifier is
43402
+ # defined by the server.
43403
+ # Corresponds to the JSON property `id`
43404
+ # @return [Fixnum]
43405
+ attr_accessor :id
43406
+
43407
+ # [Output Only] Type of the resource. Always compute#storagePool for storage
43408
+ # pools.
43409
+ # Corresponds to the JSON property `kind`
43410
+ # @return [String]
43411
+ attr_accessor :kind
43412
+
43413
+ # A fingerprint for the labels being applied to this storage pool, which is
43414
+ # essentially a hash of the labels set used for optimistic locking. The
43415
+ # fingerprint is initially generated by Compute Engine and changes after every
43416
+ # request to modify or update labels. You must always provide an up-to-date
43417
+ # fingerprint hash in order to update or change labels, otherwise the request
43418
+ # will fail with error 412 conditionNotMet. To see the latest fingerprint, make
43419
+ # a get() request to retrieve a storage pool.
43420
+ # Corresponds to the JSON property `labelFingerprint`
43421
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
43422
+ # @return [String]
43423
+ attr_accessor :label_fingerprint
43424
+
43425
+ # Labels to apply to this storage pool. These can be later modified by the
43426
+ # setLabels method.
43427
+ # Corresponds to the JSON property `labels`
43428
+ # @return [Hash<String,String>]
43429
+ attr_accessor :labels
43430
+
43431
+ # Name of the resource. Provided by the client when the resource is created. The
43432
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
43433
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
43434
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
43435
+ # and all following characters must be a dash, lowercase letter, or digit,
43436
+ # except the last character, which cannot be a dash.
43437
+ # Corresponds to the JSON property `name`
43438
+ # @return [String]
43439
+ attr_accessor :name
43440
+
43441
+ # Provisioning type of the performance-related parameters of the pool, such as
43442
+ # throughput and IOPS.
43443
+ # Corresponds to the JSON property `performanceProvisioningType`
43444
+ # @return [String]
43445
+ attr_accessor :performance_provisioning_type
43446
+
43447
+ # Size, in GiB, of the storage pool.
43448
+ # Corresponds to the JSON property `poolProvisionedCapacityGb`
43449
+ # @return [Fixnum]
43450
+ attr_accessor :pool_provisioned_capacity_gb
43451
+
43452
+ # Provisioned IOPS of the storage pool. Only relevant if the storage pool type
43453
+ # is hyperdisk-balanced.
43454
+ # Corresponds to the JSON property `poolProvisionedIops`
43455
+ # @return [Fixnum]
43456
+ attr_accessor :pool_provisioned_iops
43457
+
43458
+ # Provisioned throughput of the storage pool. Only relevant if the storage pool
43459
+ # type is hyperdisk-balanced or hyperdisk-throughput.
43460
+ # Corresponds to the JSON property `poolProvisionedThroughput`
43461
+ # @return [Fixnum]
43462
+ attr_accessor :pool_provisioned_throughput
43463
+
43464
+ # [Output Only] Contains output only fields.
43465
+ # Corresponds to the JSON property `resourceStatus`
43466
+ # @return [Google::Apis::ComputeBeta::StoragePoolResourceStatus]
43467
+ attr_accessor :resource_status
43468
+
43469
+ # [Output Only] Server-defined fully-qualified URL for this resource.
43470
+ # Corresponds to the JSON property `selfLink`
43471
+ # @return [String]
43472
+ attr_accessor :self_link
43473
+
43474
+ # [Output Only] Server-defined URL for this resource's resource id.
43475
+ # Corresponds to the JSON property `selfLinkWithId`
43476
+ # @return [String]
43477
+ attr_accessor :self_link_with_id
43478
+
43479
+ # [Output Only] The status of storage pool creation. - CREATING: Storage pool is
43480
+ # provisioning. storagePool. - FAILED: Storage pool creation failed. - READY:
43481
+ # Storage pool is ready for use. - DELETING: Storage pool is deleting.
43482
+ # Corresponds to the JSON property `state`
43483
+ # @return [String]
43484
+ attr_accessor :state
43485
+
43486
+ # [Output Only] Contains output only fields.
43487
+ # Corresponds to the JSON property `status`
43488
+ # @return [Google::Apis::ComputeBeta::StoragePoolResourceStatus]
43489
+ attr_accessor :status
43490
+
43491
+ # Type of the storage pool.
43492
+ # Corresponds to the JSON property `storagePoolType`
43493
+ # @return [String]
43494
+ attr_accessor :storage_pool_type
43495
+
43496
+ # [Output Only] URL of the zone where the storage pool resides. You must specify
43497
+ # this field as part of the HTTP request URL. It is not settable as a field in
43498
+ # the request body.
43499
+ # Corresponds to the JSON property `zone`
43500
+ # @return [String]
43501
+ attr_accessor :zone
43502
+
43503
+ def initialize(**args)
43504
+ update!(**args)
43505
+ end
43506
+
43507
+ # Update properties of this object
43508
+ def update!(**args)
43509
+ @capacity_provisioning_type = args[:capacity_provisioning_type] if args.key?(:capacity_provisioning_type)
43510
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
43511
+ @description = args[:description] if args.key?(:description)
43512
+ @id = args[:id] if args.key?(:id)
43513
+ @kind = args[:kind] if args.key?(:kind)
43514
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
43515
+ @labels = args[:labels] if args.key?(:labels)
43516
+ @name = args[:name] if args.key?(:name)
43517
+ @performance_provisioning_type = args[:performance_provisioning_type] if args.key?(:performance_provisioning_type)
43518
+ @pool_provisioned_capacity_gb = args[:pool_provisioned_capacity_gb] if args.key?(:pool_provisioned_capacity_gb)
43519
+ @pool_provisioned_iops = args[:pool_provisioned_iops] if args.key?(:pool_provisioned_iops)
43520
+ @pool_provisioned_throughput = args[:pool_provisioned_throughput] if args.key?(:pool_provisioned_throughput)
43521
+ @resource_status = args[:resource_status] if args.key?(:resource_status)
43522
+ @self_link = args[:self_link] if args.key?(:self_link)
43523
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
43524
+ @state = args[:state] if args.key?(:state)
43525
+ @status = args[:status] if args.key?(:status)
43526
+ @storage_pool_type = args[:storage_pool_type] if args.key?(:storage_pool_type)
43527
+ @zone = args[:zone] if args.key?(:zone)
43528
+ end
43529
+ end
43530
+
43531
+ #
43532
+ class StoragePoolAggregatedList
43533
+ include Google::Apis::Core::Hashable
43534
+
43535
+ #
43536
+ # Corresponds to the JSON property `etag`
43537
+ # @return [String]
43538
+ attr_accessor :etag
43539
+
43540
+ # [Output Only] Unique identifier for the resource; defined by the server.
43541
+ # Corresponds to the JSON property `id`
43542
+ # @return [String]
43543
+ attr_accessor :id
43544
+
43545
+ # A list of StoragePoolsScopedList resources.
43546
+ # Corresponds to the JSON property `items`
43547
+ # @return [Hash<String,Google::Apis::ComputeBeta::StoragePoolsScopedList>]
43548
+ attr_accessor :items
43549
+
43550
+ # [Output Only] Type of resource. Always compute#storagePoolAggregatedList for
43551
+ # aggregated lists of storage pools.
43552
+ # Corresponds to the JSON property `kind`
43553
+ # @return [String]
43554
+ attr_accessor :kind
43555
+
43556
+ # [Output Only] This token allows you to get the next page of results for list
43557
+ # requests. If the number of results is larger than maxResults, use the
43558
+ # nextPageToken as a value for the query parameter pageToken in the next list
43559
+ # request. Subsequent list requests will have their own nextPageToken to
43560
+ # continue paging through the results.
43561
+ # Corresponds to the JSON property `nextPageToken`
43562
+ # @return [String]
43563
+ attr_accessor :next_page_token
43564
+
43565
+ # [Output Only] Server-defined URL for this resource.
43566
+ # Corresponds to the JSON property `selfLink`
43567
+ # @return [String]
43568
+ attr_accessor :self_link
43569
+
43570
+ # [Output Only] Unreachable resources.
43571
+ # Corresponds to the JSON property `unreachables`
43572
+ # @return [Array<String>]
43573
+ attr_accessor :unreachables
43574
+
43575
+ # [Output Only] Informational warning message.
43576
+ # Corresponds to the JSON property `warning`
43577
+ # @return [Google::Apis::ComputeBeta::StoragePoolAggregatedList::Warning]
43578
+ attr_accessor :warning
43579
+
43580
+ def initialize(**args)
43581
+ update!(**args)
43582
+ end
43583
+
43584
+ # Update properties of this object
43585
+ def update!(**args)
43586
+ @etag = args[:etag] if args.key?(:etag)
43587
+ @id = args[:id] if args.key?(:id)
43588
+ @items = args[:items] if args.key?(:items)
43589
+ @kind = args[:kind] if args.key?(:kind)
43590
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
43591
+ @self_link = args[:self_link] if args.key?(:self_link)
43592
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
43593
+ @warning = args[:warning] if args.key?(:warning)
43594
+ end
43595
+
43596
+ # [Output Only] Informational warning message.
43597
+ class Warning
43598
+ include Google::Apis::Core::Hashable
43599
+
43600
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
43601
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
43602
+ # Corresponds to the JSON property `code`
43603
+ # @return [String]
43604
+ attr_accessor :code
43605
+
43606
+ # [Output Only] Metadata about this warning in key: value format. For example: "
43607
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
43608
+ # Corresponds to the JSON property `data`
43609
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolAggregatedList::Warning::Datum>]
43610
+ attr_accessor :data
43611
+
43612
+ # [Output Only] A human-readable description of the warning code.
43613
+ # Corresponds to the JSON property `message`
43614
+ # @return [String]
43615
+ attr_accessor :message
43616
+
43617
+ def initialize(**args)
43618
+ update!(**args)
43619
+ end
43620
+
43621
+ # Update properties of this object
43622
+ def update!(**args)
43623
+ @code = args[:code] if args.key?(:code)
43624
+ @data = args[:data] if args.key?(:data)
43625
+ @message = args[:message] if args.key?(:message)
43626
+ end
43627
+
43628
+ #
43629
+ class Datum
43630
+ include Google::Apis::Core::Hashable
43631
+
43632
+ # [Output Only] A key that provides more detail on the warning being returned.
43633
+ # For example, for warnings where there are no results in a list request for a
43634
+ # particular zone, this key might be scope and the key value might be the zone
43635
+ # name. Other examples might be a key indicating a deprecated resource and a
43636
+ # suggested replacement, or a warning about invalid network settings (for
43637
+ # example, if an instance attempts to perform IP forwarding but is not enabled
43638
+ # for IP forwarding).
43639
+ # Corresponds to the JSON property `key`
43640
+ # @return [String]
43641
+ attr_accessor :key
43642
+
43643
+ # [Output Only] A warning data value corresponding to the key.
43644
+ # Corresponds to the JSON property `value`
43645
+ # @return [String]
43646
+ attr_accessor :value
43647
+
43648
+ def initialize(**args)
43649
+ update!(**args)
43650
+ end
43651
+
43652
+ # Update properties of this object
43653
+ def update!(**args)
43654
+ @key = args[:key] if args.key?(:key)
43655
+ @value = args[:value] if args.key?(:value)
43656
+ end
43657
+ end
43658
+ end
43659
+ end
43660
+
43661
+ #
43662
+ class StoragePoolDisk
43663
+ include Google::Apis::Core::Hashable
43664
+
43665
+ # [Output Only] Instances this disk is attached to.
43666
+ # Corresponds to the JSON property `attachedInstances`
43667
+ # @return [Array<String>]
43668
+ attr_accessor :attached_instances
43669
+
43670
+ # [Output Only] Creation timestamp in RFC3339 text format.
43671
+ # Corresponds to the JSON property `creationTimestamp`
43672
+ # @return [String]
43673
+ attr_accessor :creation_timestamp
43674
+
43675
+ # [Output Only] The URL of the disk.
43676
+ # Corresponds to the JSON property `disk`
43677
+ # @return [String]
43678
+ attr_accessor :disk
43679
+
43680
+ # [Output Only] The name of the disk.
43681
+ # Corresponds to the JSON property `name`
43682
+ # @return [String]
43683
+ attr_accessor :name
43684
+
43685
+ # [Output Only] The number of IOPS provisioned for the disk.
43686
+ # Corresponds to the JSON property `provisionedIops`
43687
+ # @return [Fixnum]
43688
+ attr_accessor :provisioned_iops
43689
+
43690
+ # [Output Only] The throughput provisioned for the disk.
43691
+ # Corresponds to the JSON property `provisionedThroughput`
43692
+ # @return [Fixnum]
43693
+ attr_accessor :provisioned_throughput
43694
+
43695
+ # [Output Only] Resource policies applied to disk for automatic snapshot
43696
+ # creations.
43697
+ # Corresponds to the JSON property `resourcePolicies`
43698
+ # @return [Array<String>]
43699
+ attr_accessor :resource_policies
43700
+
43701
+ # [Output Only] The disk size, in GB.
43702
+ # Corresponds to the JSON property `sizeGb`
43703
+ # @return [Fixnum]
43704
+ attr_accessor :size_gb
43705
+
43706
+ # [Output Only] The disk status.
43707
+ # Corresponds to the JSON property `status`
43708
+ # @return [String]
43709
+ attr_accessor :status
43710
+
43711
+ # [Output Only] The disk type.
43712
+ # Corresponds to the JSON property `type`
43713
+ # @return [String]
43714
+ attr_accessor :type
43715
+
43716
+ # [Output Only] Amount of disk space used.
43717
+ # Corresponds to the JSON property `usedBytes`
43718
+ # @return [Fixnum]
43719
+ attr_accessor :used_bytes
43720
+
43721
+ def initialize(**args)
43722
+ update!(**args)
43723
+ end
43724
+
43725
+ # Update properties of this object
43726
+ def update!(**args)
43727
+ @attached_instances = args[:attached_instances] if args.key?(:attached_instances)
43728
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
43729
+ @disk = args[:disk] if args.key?(:disk)
43730
+ @name = args[:name] if args.key?(:name)
43731
+ @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
43732
+ @provisioned_throughput = args[:provisioned_throughput] if args.key?(:provisioned_throughput)
43733
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
43734
+ @size_gb = args[:size_gb] if args.key?(:size_gb)
43735
+ @status = args[:status] if args.key?(:status)
43736
+ @type = args[:type] if args.key?(:type)
43737
+ @used_bytes = args[:used_bytes] if args.key?(:used_bytes)
43738
+ end
43739
+ end
43740
+
43741
+ # A list of StoragePool resources.
43742
+ class StoragePoolList
43743
+ include Google::Apis::Core::Hashable
43744
+
43745
+ #
43746
+ # Corresponds to the JSON property `etag`
43747
+ # @return [String]
43748
+ attr_accessor :etag
43749
+
43750
+ # [Output Only] Unique identifier for the resource; defined by the server.
43751
+ # Corresponds to the JSON property `id`
43752
+ # @return [String]
43753
+ attr_accessor :id
43754
+
43755
+ # A list of StoragePool resources.
43756
+ # Corresponds to the JSON property `items`
43757
+ # @return [Array<Google::Apis::ComputeBeta::StoragePool>]
43758
+ attr_accessor :items
43759
+
43760
+ # [Output Only] Type of resource. Always compute#storagePoolList for lists of
43761
+ # storagePools.
43762
+ # Corresponds to the JSON property `kind`
43763
+ # @return [String]
43764
+ attr_accessor :kind
43765
+
43766
+ # [Output Only] This token allows you to get the next page of results for list
43767
+ # requests. If the number of results is larger than maxResults, use the
43768
+ # nextPageToken as a value for the query parameter pageToken in the next list
43769
+ # request. Subsequent list requests will have their own nextPageToken to
43770
+ # continue paging through the results.
43771
+ # Corresponds to the JSON property `nextPageToken`
43772
+ # @return [String]
43773
+ attr_accessor :next_page_token
43774
+
43775
+ # [Output Only] Server-defined URL for this resource.
43776
+ # Corresponds to the JSON property `selfLink`
43777
+ # @return [String]
43778
+ attr_accessor :self_link
43779
+
43780
+ # [Output Only] Unreachable resources. end_interface:
43781
+ # MixerListResponseWithEtagBuilder
43782
+ # Corresponds to the JSON property `unreachables`
43783
+ # @return [Array<String>]
43784
+ attr_accessor :unreachables
43785
+
43786
+ # [Output Only] Informational warning message.
43787
+ # Corresponds to the JSON property `warning`
43788
+ # @return [Google::Apis::ComputeBeta::StoragePoolList::Warning]
43789
+ attr_accessor :warning
43790
+
43791
+ def initialize(**args)
43792
+ update!(**args)
43793
+ end
43794
+
43795
+ # Update properties of this object
43796
+ def update!(**args)
43797
+ @etag = args[:etag] if args.key?(:etag)
43798
+ @id = args[:id] if args.key?(:id)
43799
+ @items = args[:items] if args.key?(:items)
43800
+ @kind = args[:kind] if args.key?(:kind)
43801
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
43802
+ @self_link = args[:self_link] if args.key?(:self_link)
43803
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
43804
+ @warning = args[:warning] if args.key?(:warning)
43805
+ end
43806
+
43807
+ # [Output Only] Informational warning message.
43808
+ class Warning
43809
+ include Google::Apis::Core::Hashable
43810
+
43811
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
43812
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
43813
+ # Corresponds to the JSON property `code`
43814
+ # @return [String]
43815
+ attr_accessor :code
43816
+
43817
+ # [Output Only] Metadata about this warning in key: value format. For example: "
43818
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
43819
+ # Corresponds to the JSON property `data`
43820
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolList::Warning::Datum>]
43821
+ attr_accessor :data
43822
+
43823
+ # [Output Only] A human-readable description of the warning code.
43824
+ # Corresponds to the JSON property `message`
43825
+ # @return [String]
43826
+ attr_accessor :message
43827
+
43828
+ def initialize(**args)
43829
+ update!(**args)
43830
+ end
43831
+
43832
+ # Update properties of this object
43833
+ def update!(**args)
43834
+ @code = args[:code] if args.key?(:code)
43835
+ @data = args[:data] if args.key?(:data)
43836
+ @message = args[:message] if args.key?(:message)
43837
+ end
43838
+
43839
+ #
43840
+ class Datum
43841
+ include Google::Apis::Core::Hashable
43842
+
43843
+ # [Output Only] A key that provides more detail on the warning being returned.
43844
+ # For example, for warnings where there are no results in a list request for a
43845
+ # particular zone, this key might be scope and the key value might be the zone
43846
+ # name. Other examples might be a key indicating a deprecated resource and a
43847
+ # suggested replacement, or a warning about invalid network settings (for
43848
+ # example, if an instance attempts to perform IP forwarding but is not enabled
43849
+ # for IP forwarding).
43850
+ # Corresponds to the JSON property `key`
43851
+ # @return [String]
43852
+ attr_accessor :key
43853
+
43854
+ # [Output Only] A warning data value corresponding to the key.
43855
+ # Corresponds to the JSON property `value`
43856
+ # @return [String]
43857
+ attr_accessor :value
43858
+
43859
+ def initialize(**args)
43860
+ update!(**args)
43861
+ end
43862
+
43863
+ # Update properties of this object
43864
+ def update!(**args)
43865
+ @key = args[:key] if args.key?(:key)
43866
+ @value = args[:value] if args.key?(:value)
43867
+ end
43868
+ end
43869
+ end
43870
+ end
43871
+
43872
+ #
43873
+ class StoragePoolListDisks
43874
+ include Google::Apis::Core::Hashable
43875
+
43876
+ #
43877
+ # Corresponds to the JSON property `etag`
43878
+ # @return [String]
43879
+ attr_accessor :etag
43880
+
43881
+ # [Output Only] Unique identifier for the resource; defined by the server.
43882
+ # Corresponds to the JSON property `id`
43883
+ # @return [String]
43884
+ attr_accessor :id
43885
+
43886
+ # A list of StoragePoolDisk resources.
43887
+ # Corresponds to the JSON property `items`
43888
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolDisk>]
43889
+ attr_accessor :items
43890
+
43891
+ # [Output Only] Type of resource. Always compute#storagePoolListDisks for lists
43892
+ # of disks in a storagePool.
43893
+ # Corresponds to the JSON property `kind`
43894
+ # @return [String]
43895
+ attr_accessor :kind
43896
+
43897
+ # [Output Only] This token allows you to get the next page of results for list
43898
+ # requests. If the number of results is larger than maxResults, use the
43899
+ # nextPageToken as a value for the query parameter pageToken in the next list
43900
+ # request. Subsequent list requests will have their own nextPageToken to
43901
+ # continue paging through the results.
43902
+ # Corresponds to the JSON property `nextPageToken`
43903
+ # @return [String]
43904
+ attr_accessor :next_page_token
43905
+
43906
+ # [Output Only] Server-defined URL for this resource.
43907
+ # Corresponds to the JSON property `selfLink`
43908
+ # @return [String]
43909
+ attr_accessor :self_link
43910
+
43911
+ # [Output Only] Unreachable resources. end_interface:
43912
+ # MixerListResponseWithEtagBuilder
43913
+ # Corresponds to the JSON property `unreachables`
43914
+ # @return [Array<String>]
43915
+ attr_accessor :unreachables
43916
+
43917
+ # [Output Only] Informational warning message.
43918
+ # Corresponds to the JSON property `warning`
43919
+ # @return [Google::Apis::ComputeBeta::StoragePoolListDisks::Warning]
43920
+ attr_accessor :warning
43921
+
43922
+ def initialize(**args)
43923
+ update!(**args)
43924
+ end
43925
+
43926
+ # Update properties of this object
43927
+ def update!(**args)
43928
+ @etag = args[:etag] if args.key?(:etag)
43929
+ @id = args[:id] if args.key?(:id)
43930
+ @items = args[:items] if args.key?(:items)
43931
+ @kind = args[:kind] if args.key?(:kind)
43932
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
43933
+ @self_link = args[:self_link] if args.key?(:self_link)
43934
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
43935
+ @warning = args[:warning] if args.key?(:warning)
43936
+ end
43937
+
43938
+ # [Output Only] Informational warning message.
43939
+ class Warning
43940
+ include Google::Apis::Core::Hashable
43941
+
43942
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
43943
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
43944
+ # Corresponds to the JSON property `code`
43945
+ # @return [String]
43946
+ attr_accessor :code
43947
+
43948
+ # [Output Only] Metadata about this warning in key: value format. For example: "
43949
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
43950
+ # Corresponds to the JSON property `data`
43951
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolListDisks::Warning::Datum>]
43952
+ attr_accessor :data
43953
+
43954
+ # [Output Only] A human-readable description of the warning code.
43955
+ # Corresponds to the JSON property `message`
43956
+ # @return [String]
43957
+ attr_accessor :message
43958
+
43959
+ def initialize(**args)
43960
+ update!(**args)
43961
+ end
43962
+
43963
+ # Update properties of this object
43964
+ def update!(**args)
43965
+ @code = args[:code] if args.key?(:code)
43966
+ @data = args[:data] if args.key?(:data)
43967
+ @message = args[:message] if args.key?(:message)
43968
+ end
43969
+
43970
+ #
43971
+ class Datum
43972
+ include Google::Apis::Core::Hashable
43973
+
43974
+ # [Output Only] A key that provides more detail on the warning being returned.
43975
+ # For example, for warnings where there are no results in a list request for a
43976
+ # particular zone, this key might be scope and the key value might be the zone
43977
+ # name. Other examples might be a key indicating a deprecated resource and a
43978
+ # suggested replacement, or a warning about invalid network settings (for
43979
+ # example, if an instance attempts to perform IP forwarding but is not enabled
43980
+ # for IP forwarding).
43981
+ # Corresponds to the JSON property `key`
43982
+ # @return [String]
43983
+ attr_accessor :key
43984
+
43985
+ # [Output Only] A warning data value corresponding to the key.
43986
+ # Corresponds to the JSON property `value`
43987
+ # @return [String]
43988
+ attr_accessor :value
43989
+
43990
+ def initialize(**args)
43991
+ update!(**args)
43992
+ end
43993
+
43994
+ # Update properties of this object
43995
+ def update!(**args)
43996
+ @key = args[:key] if args.key?(:key)
43997
+ @value = args[:value] if args.key?(:value)
43998
+ end
43999
+ end
44000
+ end
44001
+ end
44002
+
44003
+ # [Output Only] Contains output only fields.
44004
+ class StoragePoolResourceStatus
44005
+ include Google::Apis::Core::Hashable
44006
+
44007
+ # [Output Only] Number of disks used.
44008
+ # Corresponds to the JSON property `diskCount`
44009
+ # @return [Fixnum]
44010
+ attr_accessor :disk_count
44011
+
44012
+ # [Output Only] Timestamp of the last successful resize in RFC3339 text format.
44013
+ # Corresponds to the JSON property `lastResizeTimestamp`
44014
+ # @return [String]
44015
+ attr_accessor :last_resize_timestamp
44016
+
44017
+ # [Output Only] Maximum allowed aggregate disk size in gigabytes.
44018
+ # Corresponds to the JSON property `maxTotalProvisionedDiskCapacityGb`
44019
+ # @return [Fixnum]
44020
+ attr_accessor :max_total_provisioned_disk_capacity_gb
44021
+
44022
+ # [Output Only] Space used by data stored in disks within the storage pool (in
44023
+ # bytes). This will reflect the total number of bytes written to the disks in
44024
+ # the pool, in contrast to the capacity of those disks.
44025
+ # Corresponds to the JSON property `poolUsedCapacityBytes`
44026
+ # @return [Fixnum]
44027
+ attr_accessor :pool_used_capacity_bytes
44028
+
44029
+ # Sum of all the disks' provisioned IOPS, minus some amount that is allowed per
44030
+ # disk that is not counted towards pool's IOPS capacity.
44031
+ # Corresponds to the JSON property `poolUsedIops`
44032
+ # @return [Fixnum]
44033
+ attr_accessor :pool_used_iops
44034
+
44035
+ # [Output Only] Sum of all the disks' provisioned throughput in MB/s.
44036
+ # Corresponds to the JSON property `poolUsedThroughput`
44037
+ # @return [Fixnum]
44038
+ attr_accessor :pool_used_throughput
44039
+
44040
+ # [Output Only] Amount of data written into the pool, before it is compacted.
44041
+ # Corresponds to the JSON property `poolUserWrittenBytes`
44042
+ # @return [Fixnum]
44043
+ attr_accessor :pool_user_written_bytes
44044
+
44045
+ # [Output Only] Sum of all the capacity provisioned in disks in this storage
44046
+ # pool. A disk's provisioned capacity is the same as its total capacity.
44047
+ # Corresponds to the JSON property `totalProvisionedDiskCapacityGb`
44048
+ # @return [Fixnum]
44049
+ attr_accessor :total_provisioned_disk_capacity_gb
44050
+
44051
+ # [Output Only] Sum of all the disks' provisioned IOPS.
44052
+ # Corresponds to the JSON property `totalProvisionedDiskIops`
44053
+ # @return [Fixnum]
44054
+ attr_accessor :total_provisioned_disk_iops
44055
+
44056
+ # [Output Only] Sum of all the disks' provisioned throughput in MB/s, minus some
44057
+ # amount that is allowed per disk that is not counted towards pool's throughput
44058
+ # capacity.
44059
+ # Corresponds to the JSON property `totalProvisionedDiskThroughput`
44060
+ # @return [Fixnum]
44061
+ attr_accessor :total_provisioned_disk_throughput
44062
+
44063
+ def initialize(**args)
44064
+ update!(**args)
44065
+ end
44066
+
44067
+ # Update properties of this object
44068
+ def update!(**args)
44069
+ @disk_count = args[:disk_count] if args.key?(:disk_count)
44070
+ @last_resize_timestamp = args[:last_resize_timestamp] if args.key?(:last_resize_timestamp)
44071
+ @max_total_provisioned_disk_capacity_gb = args[:max_total_provisioned_disk_capacity_gb] if args.key?(:max_total_provisioned_disk_capacity_gb)
44072
+ @pool_used_capacity_bytes = args[:pool_used_capacity_bytes] if args.key?(:pool_used_capacity_bytes)
44073
+ @pool_used_iops = args[:pool_used_iops] if args.key?(:pool_used_iops)
44074
+ @pool_used_throughput = args[:pool_used_throughput] if args.key?(:pool_used_throughput)
44075
+ @pool_user_written_bytes = args[:pool_user_written_bytes] if args.key?(:pool_user_written_bytes)
44076
+ @total_provisioned_disk_capacity_gb = args[:total_provisioned_disk_capacity_gb] if args.key?(:total_provisioned_disk_capacity_gb)
44077
+ @total_provisioned_disk_iops = args[:total_provisioned_disk_iops] if args.key?(:total_provisioned_disk_iops)
44078
+ @total_provisioned_disk_throughput = args[:total_provisioned_disk_throughput] if args.key?(:total_provisioned_disk_throughput)
44079
+ end
44080
+ end
44081
+
44082
+ #
44083
+ class StoragePoolType
44084
+ include Google::Apis::Core::Hashable
44085
+
44086
+ # [Output Only] Creation timestamp in RFC3339 text format.
44087
+ # Corresponds to the JSON property `creationTimestamp`
44088
+ # @return [String]
44089
+ attr_accessor :creation_timestamp
44090
+
44091
+ # Deprecation status for a public resource.
44092
+ # Corresponds to the JSON property `deprecated`
44093
+ # @return [Google::Apis::ComputeBeta::DeprecationStatus]
44094
+ attr_accessor :deprecated
44095
+
44096
+ # [Output Only] An optional description of this resource.
44097
+ # Corresponds to the JSON property `description`
44098
+ # @return [String]
44099
+ attr_accessor :description
44100
+
44101
+ # [Output Only] The unique identifier for the resource. This identifier is
44102
+ # defined by the server.
44103
+ # Corresponds to the JSON property `id`
44104
+ # @return [Fixnum]
44105
+ attr_accessor :id
44106
+
44107
+ # [Output Only] Type of the resource. Always compute#storagePoolType for storage
44108
+ # pool types.
44109
+ # Corresponds to the JSON property `kind`
44110
+ # @return [String]
44111
+ attr_accessor :kind
44112
+
44113
+ # [Output Only] Maximum storage pool size in GB.
44114
+ # Corresponds to the JSON property `maxPoolProvisionedCapacityGb`
44115
+ # @return [Fixnum]
44116
+ attr_accessor :max_pool_provisioned_capacity_gb
44117
+
44118
+ # [Output Only] Maximum provisioned IOPS.
44119
+ # Corresponds to the JSON property `maxPoolProvisionedIops`
44120
+ # @return [Fixnum]
44121
+ attr_accessor :max_pool_provisioned_iops
44122
+
44123
+ # [Output Only] Maximum provisioned throughput.
44124
+ # Corresponds to the JSON property `maxPoolProvisionedThroughput`
44125
+ # @return [Fixnum]
44126
+ attr_accessor :max_pool_provisioned_throughput
44127
+
44128
+ # [Output Only] Minimum storage pool size in GB.
44129
+ # Corresponds to the JSON property `minPoolProvisionedCapacityGb`
44130
+ # @return [Fixnum]
44131
+ attr_accessor :min_pool_provisioned_capacity_gb
44132
+
44133
+ # [Output Only] Minimum provisioned IOPS.
44134
+ # Corresponds to the JSON property `minPoolProvisionedIops`
44135
+ # @return [Fixnum]
44136
+ attr_accessor :min_pool_provisioned_iops
44137
+
44138
+ # [Output Only] Minimum provisioned throughput.
44139
+ # Corresponds to the JSON property `minPoolProvisionedThroughput`
44140
+ # @return [Fixnum]
44141
+ attr_accessor :min_pool_provisioned_throughput
44142
+
44143
+ # [Deprecated] This field is deprecated. Use minPoolProvisionedCapacityGb
44144
+ # instead.
44145
+ # Corresponds to the JSON property `minSizeGb`
44146
+ # @return [Fixnum]
44147
+ attr_accessor :min_size_gb
44148
+
44149
+ # [Output Only] Name of the resource.
44150
+ # Corresponds to the JSON property `name`
44151
+ # @return [String]
44152
+ attr_accessor :name
44153
+
44154
+ # [Output Only] Server-defined URL for the resource.
44155
+ # Corresponds to the JSON property `selfLink`
44156
+ # @return [String]
44157
+ attr_accessor :self_link
44158
+
44159
+ # [Output Only] Server-defined URL for this resource with the resource id.
44160
+ # Corresponds to the JSON property `selfLinkWithId`
44161
+ # @return [String]
44162
+ attr_accessor :self_link_with_id
44163
+
44164
+ # [Output Only] The list of disk types supported in this storage pool type.
44165
+ # Corresponds to the JSON property `supportedDiskTypes`
44166
+ # @return [Array<String>]
44167
+ attr_accessor :supported_disk_types
44168
+
44169
+ # [Output Only] URL of the zone where the storage pool type resides. You must
44170
+ # specify this field as part of the HTTP request URL. It is not settable as a
44171
+ # field in the request body.
44172
+ # Corresponds to the JSON property `zone`
44173
+ # @return [String]
44174
+ attr_accessor :zone
44175
+
44176
+ def initialize(**args)
44177
+ update!(**args)
44178
+ end
44179
+
44180
+ # Update properties of this object
44181
+ def update!(**args)
44182
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
44183
+ @deprecated = args[:deprecated] if args.key?(:deprecated)
44184
+ @description = args[:description] if args.key?(:description)
44185
+ @id = args[:id] if args.key?(:id)
44186
+ @kind = args[:kind] if args.key?(:kind)
44187
+ @max_pool_provisioned_capacity_gb = args[:max_pool_provisioned_capacity_gb] if args.key?(:max_pool_provisioned_capacity_gb)
44188
+ @max_pool_provisioned_iops = args[:max_pool_provisioned_iops] if args.key?(:max_pool_provisioned_iops)
44189
+ @max_pool_provisioned_throughput = args[:max_pool_provisioned_throughput] if args.key?(:max_pool_provisioned_throughput)
44190
+ @min_pool_provisioned_capacity_gb = args[:min_pool_provisioned_capacity_gb] if args.key?(:min_pool_provisioned_capacity_gb)
44191
+ @min_pool_provisioned_iops = args[:min_pool_provisioned_iops] if args.key?(:min_pool_provisioned_iops)
44192
+ @min_pool_provisioned_throughput = args[:min_pool_provisioned_throughput] if args.key?(:min_pool_provisioned_throughput)
44193
+ @min_size_gb = args[:min_size_gb] if args.key?(:min_size_gb)
44194
+ @name = args[:name] if args.key?(:name)
44195
+ @self_link = args[:self_link] if args.key?(:self_link)
44196
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
44197
+ @supported_disk_types = args[:supported_disk_types] if args.key?(:supported_disk_types)
44198
+ @zone = args[:zone] if args.key?(:zone)
44199
+ end
44200
+ end
44201
+
44202
+ #
44203
+ class StoragePoolTypeAggregatedList
44204
+ include Google::Apis::Core::Hashable
44205
+
44206
+ # [Output Only] Unique identifier for the resource; defined by the server.
44207
+ # Corresponds to the JSON property `id`
44208
+ # @return [String]
44209
+ attr_accessor :id
44210
+
44211
+ # A list of StoragePoolTypesScopedList resources.
44212
+ # Corresponds to the JSON property `items`
44213
+ # @return [Hash<String,Google::Apis::ComputeBeta::StoragePoolTypesScopedList>]
44214
+ attr_accessor :items
44215
+
44216
+ # [Output Only] Type of resource. Always compute#storagePoolTypeAggregatedList .
44217
+ # Corresponds to the JSON property `kind`
44218
+ # @return [String]
44219
+ attr_accessor :kind
44220
+
44221
+ # [Output Only] This token allows you to get the next page of results for list
44222
+ # requests. If the number of results is larger than maxResults, use the
44223
+ # nextPageToken as a value for the query parameter pageToken in the next list
44224
+ # request. Subsequent list requests will have their own nextPageToken to
44225
+ # continue paging through the results.
44226
+ # Corresponds to the JSON property `nextPageToken`
44227
+ # @return [String]
44228
+ attr_accessor :next_page_token
44229
+
44230
+ # [Output Only] Server-defined URL for this resource.
44231
+ # Corresponds to the JSON property `selfLink`
44232
+ # @return [String]
44233
+ attr_accessor :self_link
44234
+
44235
+ # [Output Only] Informational warning message.
44236
+ # Corresponds to the JSON property `warning`
44237
+ # @return [Google::Apis::ComputeBeta::StoragePoolTypeAggregatedList::Warning]
44238
+ attr_accessor :warning
44239
+
44240
+ def initialize(**args)
44241
+ update!(**args)
44242
+ end
44243
+
44244
+ # Update properties of this object
44245
+ def update!(**args)
44246
+ @id = args[:id] if args.key?(:id)
44247
+ @items = args[:items] if args.key?(:items)
44248
+ @kind = args[:kind] if args.key?(:kind)
44249
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
44250
+ @self_link = args[:self_link] if args.key?(:self_link)
44251
+ @warning = args[:warning] if args.key?(:warning)
44252
+ end
44253
+
44254
+ # [Output Only] Informational warning message.
44255
+ class Warning
44256
+ include Google::Apis::Core::Hashable
44257
+
44258
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
44259
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
44260
+ # Corresponds to the JSON property `code`
44261
+ # @return [String]
44262
+ attr_accessor :code
44263
+
44264
+ # [Output Only] Metadata about this warning in key: value format. For example: "
44265
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
44266
+ # Corresponds to the JSON property `data`
44267
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolTypeAggregatedList::Warning::Datum>]
44268
+ attr_accessor :data
44269
+
44270
+ # [Output Only] A human-readable description of the warning code.
44271
+ # Corresponds to the JSON property `message`
44272
+ # @return [String]
44273
+ attr_accessor :message
44274
+
44275
+ def initialize(**args)
44276
+ update!(**args)
44277
+ end
44278
+
44279
+ # Update properties of this object
44280
+ def update!(**args)
44281
+ @code = args[:code] if args.key?(:code)
44282
+ @data = args[:data] if args.key?(:data)
44283
+ @message = args[:message] if args.key?(:message)
44284
+ end
44285
+
44286
+ #
44287
+ class Datum
44288
+ include Google::Apis::Core::Hashable
44289
+
44290
+ # [Output Only] A key that provides more detail on the warning being returned.
44291
+ # For example, for warnings where there are no results in a list request for a
44292
+ # particular zone, this key might be scope and the key value might be the zone
44293
+ # name. Other examples might be a key indicating a deprecated resource and a
44294
+ # suggested replacement, or a warning about invalid network settings (for
44295
+ # example, if an instance attempts to perform IP forwarding but is not enabled
44296
+ # for IP forwarding).
44297
+ # Corresponds to the JSON property `key`
44298
+ # @return [String]
44299
+ attr_accessor :key
44300
+
44301
+ # [Output Only] A warning data value corresponding to the key.
44302
+ # Corresponds to the JSON property `value`
44303
+ # @return [String]
44304
+ attr_accessor :value
44305
+
44306
+ def initialize(**args)
44307
+ update!(**args)
44308
+ end
44309
+
44310
+ # Update properties of this object
44311
+ def update!(**args)
44312
+ @key = args[:key] if args.key?(:key)
44313
+ @value = args[:value] if args.key?(:value)
44314
+ end
44315
+ end
44316
+ end
44317
+ end
44318
+
44319
+ # Contains a list of storage pool types.
44320
+ class StoragePoolTypeList
44321
+ include Google::Apis::Core::Hashable
44322
+
44323
+ # [Output Only] Unique identifier for the resource; defined by the server.
44324
+ # Corresponds to the JSON property `id`
44325
+ # @return [String]
44326
+ attr_accessor :id
44327
+
44328
+ # A list of StoragePoolType resources.
44329
+ # Corresponds to the JSON property `items`
44330
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolType>]
44331
+ attr_accessor :items
44332
+
44333
+ # [Output Only] Type of resource. Always compute#storagePoolTypeList for storage
44334
+ # pool types.
44335
+ # Corresponds to the JSON property `kind`
44336
+ # @return [String]
44337
+ attr_accessor :kind
44338
+
44339
+ # [Output Only] This token allows you to get the next page of results for list
44340
+ # requests. If the number of results is larger than maxResults, use the
44341
+ # nextPageToken as a value for the query parameter pageToken in the next list
44342
+ # request. Subsequent list requests will have their own nextPageToken to
44343
+ # continue paging through the results.
44344
+ # Corresponds to the JSON property `nextPageToken`
44345
+ # @return [String]
44346
+ attr_accessor :next_page_token
44347
+
44348
+ # [Output Only] Server-defined URL for this resource.
44349
+ # Corresponds to the JSON property `selfLink`
44350
+ # @return [String]
44351
+ attr_accessor :self_link
44352
+
44353
+ # [Output Only] Informational warning message.
44354
+ # Corresponds to the JSON property `warning`
44355
+ # @return [Google::Apis::ComputeBeta::StoragePoolTypeList::Warning]
44356
+ attr_accessor :warning
44357
+
44358
+ def initialize(**args)
44359
+ update!(**args)
44360
+ end
44361
+
44362
+ # Update properties of this object
44363
+ def update!(**args)
44364
+ @id = args[:id] if args.key?(:id)
44365
+ @items = args[:items] if args.key?(:items)
44366
+ @kind = args[:kind] if args.key?(:kind)
44367
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
44368
+ @self_link = args[:self_link] if args.key?(:self_link)
44369
+ @warning = args[:warning] if args.key?(:warning)
44370
+ end
44371
+
44372
+ # [Output Only] Informational warning message.
44373
+ class Warning
44374
+ include Google::Apis::Core::Hashable
44375
+
44376
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
44377
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
44378
+ # Corresponds to the JSON property `code`
44379
+ # @return [String]
44380
+ attr_accessor :code
44381
+
44382
+ # [Output Only] Metadata about this warning in key: value format. For example: "
44383
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
44384
+ # Corresponds to the JSON property `data`
44385
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolTypeList::Warning::Datum>]
44386
+ attr_accessor :data
44387
+
44388
+ # [Output Only] A human-readable description of the warning code.
44389
+ # Corresponds to the JSON property `message`
44390
+ # @return [String]
44391
+ attr_accessor :message
44392
+
44393
+ def initialize(**args)
44394
+ update!(**args)
44395
+ end
44396
+
44397
+ # Update properties of this object
44398
+ def update!(**args)
44399
+ @code = args[:code] if args.key?(:code)
44400
+ @data = args[:data] if args.key?(:data)
44401
+ @message = args[:message] if args.key?(:message)
44402
+ end
44403
+
44404
+ #
44405
+ class Datum
44406
+ include Google::Apis::Core::Hashable
44407
+
44408
+ # [Output Only] A key that provides more detail on the warning being returned.
44409
+ # For example, for warnings where there are no results in a list request for a
44410
+ # particular zone, this key might be scope and the key value might be the zone
44411
+ # name. Other examples might be a key indicating a deprecated resource and a
44412
+ # suggested replacement, or a warning about invalid network settings (for
44413
+ # example, if an instance attempts to perform IP forwarding but is not enabled
44414
+ # for IP forwarding).
44415
+ # Corresponds to the JSON property `key`
44416
+ # @return [String]
44417
+ attr_accessor :key
44418
+
44419
+ # [Output Only] A warning data value corresponding to the key.
44420
+ # Corresponds to the JSON property `value`
44421
+ # @return [String]
44422
+ attr_accessor :value
44423
+
44424
+ def initialize(**args)
44425
+ update!(**args)
44426
+ end
44427
+
44428
+ # Update properties of this object
44429
+ def update!(**args)
44430
+ @key = args[:key] if args.key?(:key)
44431
+ @value = args[:value] if args.key?(:value)
44432
+ end
44433
+ end
44434
+ end
44435
+ end
44436
+
44437
+ #
44438
+ class StoragePoolTypesScopedList
44439
+ include Google::Apis::Core::Hashable
44440
+
44441
+ # [Output Only] A list of storage pool types contained in this scope.
44442
+ # Corresponds to the JSON property `storagePoolTypes`
44443
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolType>]
44444
+ attr_accessor :storage_pool_types
44445
+
44446
+ # [Output Only] Informational warning which replaces the list of storage pool
44447
+ # types when the list is empty.
44448
+ # Corresponds to the JSON property `warning`
44449
+ # @return [Google::Apis::ComputeBeta::StoragePoolTypesScopedList::Warning]
44450
+ attr_accessor :warning
44451
+
44452
+ def initialize(**args)
44453
+ update!(**args)
44454
+ end
44455
+
44456
+ # Update properties of this object
44457
+ def update!(**args)
44458
+ @storage_pool_types = args[:storage_pool_types] if args.key?(:storage_pool_types)
44459
+ @warning = args[:warning] if args.key?(:warning)
44460
+ end
44461
+
44462
+ # [Output Only] Informational warning which replaces the list of storage pool
44463
+ # types when the list is empty.
44464
+ class Warning
44465
+ include Google::Apis::Core::Hashable
44466
+
44467
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
44468
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
44469
+ # Corresponds to the JSON property `code`
44470
+ # @return [String]
44471
+ attr_accessor :code
44472
+
44473
+ # [Output Only] Metadata about this warning in key: value format. For example: "
44474
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
44475
+ # Corresponds to the JSON property `data`
44476
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolTypesScopedList::Warning::Datum>]
44477
+ attr_accessor :data
44478
+
44479
+ # [Output Only] A human-readable description of the warning code.
44480
+ # Corresponds to the JSON property `message`
44481
+ # @return [String]
44482
+ attr_accessor :message
44483
+
44484
+ def initialize(**args)
44485
+ update!(**args)
44486
+ end
44487
+
44488
+ # Update properties of this object
44489
+ def update!(**args)
44490
+ @code = args[:code] if args.key?(:code)
44491
+ @data = args[:data] if args.key?(:data)
44492
+ @message = args[:message] if args.key?(:message)
44493
+ end
44494
+
44495
+ #
44496
+ class Datum
44497
+ include Google::Apis::Core::Hashable
44498
+
44499
+ # [Output Only] A key that provides more detail on the warning being returned.
44500
+ # For example, for warnings where there are no results in a list request for a
44501
+ # particular zone, this key might be scope and the key value might be the zone
44502
+ # name. Other examples might be a key indicating a deprecated resource and a
44503
+ # suggested replacement, or a warning about invalid network settings (for
44504
+ # example, if an instance attempts to perform IP forwarding but is not enabled
44505
+ # for IP forwarding).
44506
+ # Corresponds to the JSON property `key`
44507
+ # @return [String]
44508
+ attr_accessor :key
44509
+
44510
+ # [Output Only] A warning data value corresponding to the key.
44511
+ # Corresponds to the JSON property `value`
44512
+ # @return [String]
44513
+ attr_accessor :value
44514
+
44515
+ def initialize(**args)
44516
+ update!(**args)
44517
+ end
44518
+
44519
+ # Update properties of this object
44520
+ def update!(**args)
44521
+ @key = args[:key] if args.key?(:key)
44522
+ @value = args[:value] if args.key?(:value)
44523
+ end
44524
+ end
44525
+ end
44526
+ end
44527
+
44528
+ #
44529
+ class StoragePoolsScopedList
44530
+ include Google::Apis::Core::Hashable
44531
+
44532
+ # [Output Only] A list of storage pool contained in this scope.
44533
+ # Corresponds to the JSON property `storagePools`
44534
+ # @return [Array<Google::Apis::ComputeBeta::StoragePool>]
44535
+ attr_accessor :storage_pools
44536
+
44537
+ # [Output Only] Informational warning which replaces the list of storage pool
44538
+ # when the list is empty.
44539
+ # Corresponds to the JSON property `warning`
44540
+ # @return [Google::Apis::ComputeBeta::StoragePoolsScopedList::Warning]
44541
+ attr_accessor :warning
44542
+
44543
+ def initialize(**args)
44544
+ update!(**args)
44545
+ end
44546
+
44547
+ # Update properties of this object
44548
+ def update!(**args)
44549
+ @storage_pools = args[:storage_pools] if args.key?(:storage_pools)
44550
+ @warning = args[:warning] if args.key?(:warning)
44551
+ end
44552
+
44553
+ # [Output Only] Informational warning which replaces the list of storage pool
44554
+ # when the list is empty.
44555
+ class Warning
44556
+ include Google::Apis::Core::Hashable
44557
+
44558
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
44559
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
44560
+ # Corresponds to the JSON property `code`
44561
+ # @return [String]
44562
+ attr_accessor :code
44563
+
44564
+ # [Output Only] Metadata about this warning in key: value format. For example: "
44565
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
44566
+ # Corresponds to the JSON property `data`
44567
+ # @return [Array<Google::Apis::ComputeBeta::StoragePoolsScopedList::Warning::Datum>]
44568
+ attr_accessor :data
44569
+
44570
+ # [Output Only] A human-readable description of the warning code.
44571
+ # Corresponds to the JSON property `message`
44572
+ # @return [String]
44573
+ attr_accessor :message
44574
+
44575
+ def initialize(**args)
44576
+ update!(**args)
44577
+ end
44578
+
44579
+ # Update properties of this object
44580
+ def update!(**args)
44581
+ @code = args[:code] if args.key?(:code)
44582
+ @data = args[:data] if args.key?(:data)
44583
+ @message = args[:message] if args.key?(:message)
44584
+ end
44585
+
44586
+ #
44587
+ class Datum
44588
+ include Google::Apis::Core::Hashable
44589
+
44590
+ # [Output Only] A key that provides more detail on the warning being returned.
44591
+ # For example, for warnings where there are no results in a list request for a
44592
+ # particular zone, this key might be scope and the key value might be the zone
44593
+ # name. Other examples might be a key indicating a deprecated resource and a
44594
+ # suggested replacement, or a warning about invalid network settings (for
44595
+ # example, if an instance attempts to perform IP forwarding but is not enabled
44596
+ # for IP forwarding).
44597
+ # Corresponds to the JSON property `key`
44598
+ # @return [String]
44599
+ attr_accessor :key
44600
+
44601
+ # [Output Only] A warning data value corresponding to the key.
44602
+ # Corresponds to the JSON property `value`
44603
+ # @return [String]
44604
+ attr_accessor :value
44605
+
44606
+ def initialize(**args)
44607
+ update!(**args)
44608
+ end
44609
+
44610
+ # Update properties of this object
44611
+ def update!(**args)
44612
+ @key = args[:key] if args.key?(:key)
44613
+ @value = args[:value] if args.key?(:value)
44614
+ end
44615
+ end
44616
+ end
44617
+ end
44618
+
43297
44619
  # Represents a Subnetwork resource. A subnetwork (also known as a subnet) is a
43298
44620
  # logical partition of a Virtual Private Cloud network with one primary IP range
43299
44621
  # and zero or more secondary IP ranges. For more information, read Virtual