google-apis-compute_v1 0.90.0 → 0.91.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1770,6 +1770,15 @@ module Google
1770
1770
  # @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
1771
1771
  attr_accessor :source_snapshot_encryption_key
1772
1772
 
1773
+ # The storage pool in which the new disk is created. You can provide this as a
1774
+ # partial or full URL to the resource. For example, the following are valid
1775
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
1776
+ # storagePools/storagePool - projects/project/zones/zone/storagePools/
1777
+ # storagePool - zones/zone/storagePools/storagePool
1778
+ # Corresponds to the JSON property `storagePool`
1779
+ # @return [String]
1780
+ attr_accessor :storage_pool
1781
+
1773
1782
  def initialize(**args)
1774
1783
  update!(**args)
1775
1784
  end
@@ -1794,6 +1803,7 @@ module Google
1794
1803
  @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key)
1795
1804
  @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
1796
1805
  @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key)
1806
+ @storage_pool = args[:storage_pool] if args.key?(:storage_pool)
1797
1807
  end
1798
1808
  end
1799
1809
 
@@ -6629,6 +6639,15 @@ module Google
6629
6639
  # @return [String]
6630
6640
  attr_accessor :status
6631
6641
 
6642
+ # The storage pool in which the new disk is created. You can provide this as a
6643
+ # partial or full URL to the resource. For example, the following are valid
6644
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
6645
+ # storagePools/storagePool - projects/project/zones/zone/storagePools/
6646
+ # storagePool - zones/zone/storagePools/storagePool
6647
+ # Corresponds to the JSON property `storagePool`
6648
+ # @return [String]
6649
+ attr_accessor :storage_pool
6650
+
6632
6651
  # URL of the disk type resource describing which disk type to use to create the
6633
6652
  # disk. Provide this when creating the disk. For example: projects/project /
6634
6653
  # zones/zone/diskTypes/pd-ssd . See Persistent disk types.
@@ -6700,6 +6719,7 @@ module Google
6700
6719
  @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id)
6701
6720
  @source_storage_object = args[:source_storage_object] if args.key?(:source_storage_object)
6702
6721
  @status = args[:status] if args.key?(:status)
6722
+ @storage_pool = args[:storage_pool] if args.key?(:storage_pool)
6703
6723
  @type = args[:type] if args.key?(:type)
6704
6724
  @users = args[:users] if args.key?(:users)
6705
6725
  @zone = args[:zone] if args.key?(:zone)
@@ -10661,7 +10681,7 @@ module Google
10661
10681
  # The ID of a supported feature. To add multiple values, use commas to separate
10662
10682
  # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
10663
10683
  # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE -
10664
- # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE -
10684
+ # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE_V2 - SEV_SNP_CAPABLE -
10665
10685
  # TDX_CAPABLE - IDPF For more information, see Enabling guest operating system
10666
10686
  # features.
10667
10687
  # Corresponds to the JSON property `type`
@@ -20341,10 +20361,10 @@ module Google
20341
20361
 
20342
20362
  # [Output Only] Port pair remote location constraints, which can take one of the
20343
20363
  # following values: PORT_PAIR_UNCONSTRAINED_REMOTE_LOCATION,
20344
- # PORT_PAIR_MATCHING_REMOTE_LOCATION. GCP's API refers only to individual ports,
20345
- # but the UI uses this field when ordering a pair of ports, to prevent users
20346
- # from accidentally ordering something that is incompatible with their cloud
20347
- # provider. Specifically, when ordering a redundant pair of Cross-Cloud
20364
+ # PORT_PAIR_MATCHING_REMOTE_LOCATION. Google Cloud API refers only to individual
20365
+ # ports, but the UI uses this field when ordering a pair of ports, to prevent
20366
+ # users from accidentally ordering something that is incompatible with their
20367
+ # cloud provider. Specifically, when ordering a redundant pair of Cross-Cloud
20348
20368
  # Interconnect ports, and one of them uses a remote location with
20349
20369
  # portPairMatchingRemoteLocation set to matching, the UI requires that both
20350
20370
  # ports use the same remote location.
@@ -39920,6 +39940,1244 @@ module Google
39920
39940
  end
39921
39941
  end
39922
39942
 
39943
+ # Represents a zonal storage pool resource.
39944
+ class StoragePool
39945
+ include Google::Apis::Core::Hashable
39946
+
39947
+ # Provisioning type of the byte capacity of the pool.
39948
+ # Corresponds to the JSON property `capacityProvisioningType`
39949
+ # @return [String]
39950
+ attr_accessor :capacity_provisioning_type
39951
+
39952
+ # [Output Only] Creation timestamp in RFC3339 text format.
39953
+ # Corresponds to the JSON property `creationTimestamp`
39954
+ # @return [String]
39955
+ attr_accessor :creation_timestamp
39956
+
39957
+ # An optional description of this resource. Provide this property when you
39958
+ # create the resource.
39959
+ # Corresponds to the JSON property `description`
39960
+ # @return [String]
39961
+ attr_accessor :description
39962
+
39963
+ # [Output Only] The unique identifier for the resource. This identifier is
39964
+ # defined by the server.
39965
+ # Corresponds to the JSON property `id`
39966
+ # @return [Fixnum]
39967
+ attr_accessor :id
39968
+
39969
+ # [Output Only] Type of the resource. Always compute#storagePool for storage
39970
+ # pools.
39971
+ # Corresponds to the JSON property `kind`
39972
+ # @return [String]
39973
+ attr_accessor :kind
39974
+
39975
+ # A fingerprint for the labels being applied to this storage pool, which is
39976
+ # essentially a hash of the labels set used for optimistic locking. The
39977
+ # fingerprint is initially generated by Compute Engine and changes after every
39978
+ # request to modify or update labels. You must always provide an up-to-date
39979
+ # fingerprint hash in order to update or change labels, otherwise the request
39980
+ # will fail with error 412 conditionNotMet. To see the latest fingerprint, make
39981
+ # a get() request to retrieve a storage pool.
39982
+ # Corresponds to the JSON property `labelFingerprint`
39983
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
39984
+ # @return [String]
39985
+ attr_accessor :label_fingerprint
39986
+
39987
+ # Labels to apply to this storage pool. These can be later modified by the
39988
+ # setLabels method.
39989
+ # Corresponds to the JSON property `labels`
39990
+ # @return [Hash<String,String>]
39991
+ attr_accessor :labels
39992
+
39993
+ # Name of the resource. Provided by the client when the resource is created. The
39994
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
39995
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
39996
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
39997
+ # and all following characters must be a dash, lowercase letter, or digit,
39998
+ # except the last character, which cannot be a dash.
39999
+ # Corresponds to the JSON property `name`
40000
+ # @return [String]
40001
+ attr_accessor :name
40002
+
40003
+ # Provisioning type of the performance-related parameters of the pool, such as
40004
+ # throughput and IOPS.
40005
+ # Corresponds to the JSON property `performanceProvisioningType`
40006
+ # @return [String]
40007
+ attr_accessor :performance_provisioning_type
40008
+
40009
+ # Size, in GiB, of the storage pool.
40010
+ # Corresponds to the JSON property `poolProvisionedCapacityGb`
40011
+ # @return [Fixnum]
40012
+ attr_accessor :pool_provisioned_capacity_gb
40013
+
40014
+ # Provisioned IOPS of the storage pool. Only relevant if the storage pool type
40015
+ # is hyperdisk-balanced.
40016
+ # Corresponds to the JSON property `poolProvisionedIops`
40017
+ # @return [Fixnum]
40018
+ attr_accessor :pool_provisioned_iops
40019
+
40020
+ # Provisioned throughput of the storage pool. Only relevant if the storage pool
40021
+ # type is hyperdisk-balanced or hyperdisk-throughput.
40022
+ # Corresponds to the JSON property `poolProvisionedThroughput`
40023
+ # @return [Fixnum]
40024
+ attr_accessor :pool_provisioned_throughput
40025
+
40026
+ # [Output Only] Contains output only fields.
40027
+ # Corresponds to the JSON property `resourceStatus`
40028
+ # @return [Google::Apis::ComputeV1::StoragePoolResourceStatus]
40029
+ attr_accessor :resource_status
40030
+
40031
+ # [Output Only] Server-defined fully-qualified URL for this resource.
40032
+ # Corresponds to the JSON property `selfLink`
40033
+ # @return [String]
40034
+ attr_accessor :self_link
40035
+
40036
+ # [Output Only] Server-defined URL for this resource's resource id.
40037
+ # Corresponds to the JSON property `selfLinkWithId`
40038
+ # @return [String]
40039
+ attr_accessor :self_link_with_id
40040
+
40041
+ # [Output Only] The status of storage pool creation. - CREATING: Storage pool is
40042
+ # provisioning. storagePool. - FAILED: Storage pool creation failed. - READY:
40043
+ # Storage pool is ready for use. - DELETING: Storage pool is deleting.
40044
+ # Corresponds to the JSON property `state`
40045
+ # @return [String]
40046
+ attr_accessor :state
40047
+
40048
+ # [Output Only] Contains output only fields.
40049
+ # Corresponds to the JSON property `status`
40050
+ # @return [Google::Apis::ComputeV1::StoragePoolResourceStatus]
40051
+ attr_accessor :status
40052
+
40053
+ # Type of the storage pool.
40054
+ # Corresponds to the JSON property `storagePoolType`
40055
+ # @return [String]
40056
+ attr_accessor :storage_pool_type
40057
+
40058
+ # [Output Only] URL of the zone where the storage pool resides. You must specify
40059
+ # this field as part of the HTTP request URL. It is not settable as a field in
40060
+ # the request body.
40061
+ # Corresponds to the JSON property `zone`
40062
+ # @return [String]
40063
+ attr_accessor :zone
40064
+
40065
+ def initialize(**args)
40066
+ update!(**args)
40067
+ end
40068
+
40069
+ # Update properties of this object
40070
+ def update!(**args)
40071
+ @capacity_provisioning_type = args[:capacity_provisioning_type] if args.key?(:capacity_provisioning_type)
40072
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
40073
+ @description = args[:description] if args.key?(:description)
40074
+ @id = args[:id] if args.key?(:id)
40075
+ @kind = args[:kind] if args.key?(:kind)
40076
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
40077
+ @labels = args[:labels] if args.key?(:labels)
40078
+ @name = args[:name] if args.key?(:name)
40079
+ @performance_provisioning_type = args[:performance_provisioning_type] if args.key?(:performance_provisioning_type)
40080
+ @pool_provisioned_capacity_gb = args[:pool_provisioned_capacity_gb] if args.key?(:pool_provisioned_capacity_gb)
40081
+ @pool_provisioned_iops = args[:pool_provisioned_iops] if args.key?(:pool_provisioned_iops)
40082
+ @pool_provisioned_throughput = args[:pool_provisioned_throughput] if args.key?(:pool_provisioned_throughput)
40083
+ @resource_status = args[:resource_status] if args.key?(:resource_status)
40084
+ @self_link = args[:self_link] if args.key?(:self_link)
40085
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
40086
+ @state = args[:state] if args.key?(:state)
40087
+ @status = args[:status] if args.key?(:status)
40088
+ @storage_pool_type = args[:storage_pool_type] if args.key?(:storage_pool_type)
40089
+ @zone = args[:zone] if args.key?(:zone)
40090
+ end
40091
+ end
40092
+
40093
+ #
40094
+ class StoragePoolAggregatedList
40095
+ include Google::Apis::Core::Hashable
40096
+
40097
+ #
40098
+ # Corresponds to the JSON property `etag`
40099
+ # @return [String]
40100
+ attr_accessor :etag
40101
+
40102
+ # [Output Only] Unique identifier for the resource; defined by the server.
40103
+ # Corresponds to the JSON property `id`
40104
+ # @return [String]
40105
+ attr_accessor :id
40106
+
40107
+ # A list of StoragePoolsScopedList resources.
40108
+ # Corresponds to the JSON property `items`
40109
+ # @return [Hash<String,Google::Apis::ComputeV1::StoragePoolsScopedList>]
40110
+ attr_accessor :items
40111
+
40112
+ # [Output Only] Type of resource. Always compute#storagePoolAggregatedList for
40113
+ # aggregated lists of storage pools.
40114
+ # Corresponds to the JSON property `kind`
40115
+ # @return [String]
40116
+ attr_accessor :kind
40117
+
40118
+ # [Output Only] This token allows you to get the next page of results for list
40119
+ # requests. If the number of results is larger than maxResults, use the
40120
+ # nextPageToken as a value for the query parameter pageToken in the next list
40121
+ # request. Subsequent list requests will have their own nextPageToken to
40122
+ # continue paging through the results.
40123
+ # Corresponds to the JSON property `nextPageToken`
40124
+ # @return [String]
40125
+ attr_accessor :next_page_token
40126
+
40127
+ # [Output Only] Server-defined URL for this resource.
40128
+ # Corresponds to the JSON property `selfLink`
40129
+ # @return [String]
40130
+ attr_accessor :self_link
40131
+
40132
+ # [Output Only] Unreachable resources.
40133
+ # Corresponds to the JSON property `unreachables`
40134
+ # @return [Array<String>]
40135
+ attr_accessor :unreachables
40136
+
40137
+ # [Output Only] Informational warning message.
40138
+ # Corresponds to the JSON property `warning`
40139
+ # @return [Google::Apis::ComputeV1::StoragePoolAggregatedList::Warning]
40140
+ attr_accessor :warning
40141
+
40142
+ def initialize(**args)
40143
+ update!(**args)
40144
+ end
40145
+
40146
+ # Update properties of this object
40147
+ def update!(**args)
40148
+ @etag = args[:etag] if args.key?(:etag)
40149
+ @id = args[:id] if args.key?(:id)
40150
+ @items = args[:items] if args.key?(:items)
40151
+ @kind = args[:kind] if args.key?(:kind)
40152
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
40153
+ @self_link = args[:self_link] if args.key?(:self_link)
40154
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
40155
+ @warning = args[:warning] if args.key?(:warning)
40156
+ end
40157
+
40158
+ # [Output Only] Informational warning message.
40159
+ class Warning
40160
+ include Google::Apis::Core::Hashable
40161
+
40162
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
40163
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
40164
+ # Corresponds to the JSON property `code`
40165
+ # @return [String]
40166
+ attr_accessor :code
40167
+
40168
+ # [Output Only] Metadata about this warning in key: value format. For example: "
40169
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
40170
+ # Corresponds to the JSON property `data`
40171
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolAggregatedList::Warning::Datum>]
40172
+ attr_accessor :data
40173
+
40174
+ # [Output Only] A human-readable description of the warning code.
40175
+ # Corresponds to the JSON property `message`
40176
+ # @return [String]
40177
+ attr_accessor :message
40178
+
40179
+ def initialize(**args)
40180
+ update!(**args)
40181
+ end
40182
+
40183
+ # Update properties of this object
40184
+ def update!(**args)
40185
+ @code = args[:code] if args.key?(:code)
40186
+ @data = args[:data] if args.key?(:data)
40187
+ @message = args[:message] if args.key?(:message)
40188
+ end
40189
+
40190
+ #
40191
+ class Datum
40192
+ include Google::Apis::Core::Hashable
40193
+
40194
+ # [Output Only] A key that provides more detail on the warning being returned.
40195
+ # For example, for warnings where there are no results in a list request for a
40196
+ # particular zone, this key might be scope and the key value might be the zone
40197
+ # name. Other examples might be a key indicating a deprecated resource and a
40198
+ # suggested replacement, or a warning about invalid network settings (for
40199
+ # example, if an instance attempts to perform IP forwarding but is not enabled
40200
+ # for IP forwarding).
40201
+ # Corresponds to the JSON property `key`
40202
+ # @return [String]
40203
+ attr_accessor :key
40204
+
40205
+ # [Output Only] A warning data value corresponding to the key.
40206
+ # Corresponds to the JSON property `value`
40207
+ # @return [String]
40208
+ attr_accessor :value
40209
+
40210
+ def initialize(**args)
40211
+ update!(**args)
40212
+ end
40213
+
40214
+ # Update properties of this object
40215
+ def update!(**args)
40216
+ @key = args[:key] if args.key?(:key)
40217
+ @value = args[:value] if args.key?(:value)
40218
+ end
40219
+ end
40220
+ end
40221
+ end
40222
+
40223
+ #
40224
+ class StoragePoolDisk
40225
+ include Google::Apis::Core::Hashable
40226
+
40227
+ # [Output Only] Instances this disk is attached to.
40228
+ # Corresponds to the JSON property `attachedInstances`
40229
+ # @return [Array<String>]
40230
+ attr_accessor :attached_instances
40231
+
40232
+ # [Output Only] Creation timestamp in RFC3339 text format.
40233
+ # Corresponds to the JSON property `creationTimestamp`
40234
+ # @return [String]
40235
+ attr_accessor :creation_timestamp
40236
+
40237
+ # [Output Only] The URL of the disk.
40238
+ # Corresponds to the JSON property `disk`
40239
+ # @return [String]
40240
+ attr_accessor :disk
40241
+
40242
+ # [Output Only] The name of the disk.
40243
+ # Corresponds to the JSON property `name`
40244
+ # @return [String]
40245
+ attr_accessor :name
40246
+
40247
+ # [Output Only] The number of IOPS provisioned for the disk.
40248
+ # Corresponds to the JSON property `provisionedIops`
40249
+ # @return [Fixnum]
40250
+ attr_accessor :provisioned_iops
40251
+
40252
+ # [Output Only] The throughput provisioned for the disk.
40253
+ # Corresponds to the JSON property `provisionedThroughput`
40254
+ # @return [Fixnum]
40255
+ attr_accessor :provisioned_throughput
40256
+
40257
+ # [Output Only] Resource policies applied to disk for automatic snapshot
40258
+ # creations.
40259
+ # Corresponds to the JSON property `resourcePolicies`
40260
+ # @return [Array<String>]
40261
+ attr_accessor :resource_policies
40262
+
40263
+ # [Output Only] The disk size, in GB.
40264
+ # Corresponds to the JSON property `sizeGb`
40265
+ # @return [Fixnum]
40266
+ attr_accessor :size_gb
40267
+
40268
+ # [Output Only] The disk status.
40269
+ # Corresponds to the JSON property `status`
40270
+ # @return [String]
40271
+ attr_accessor :status
40272
+
40273
+ # [Output Only] The disk type.
40274
+ # Corresponds to the JSON property `type`
40275
+ # @return [String]
40276
+ attr_accessor :type
40277
+
40278
+ # [Output Only] Amount of disk space used.
40279
+ # Corresponds to the JSON property `usedBytes`
40280
+ # @return [Fixnum]
40281
+ attr_accessor :used_bytes
40282
+
40283
+ def initialize(**args)
40284
+ update!(**args)
40285
+ end
40286
+
40287
+ # Update properties of this object
40288
+ def update!(**args)
40289
+ @attached_instances = args[:attached_instances] if args.key?(:attached_instances)
40290
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
40291
+ @disk = args[:disk] if args.key?(:disk)
40292
+ @name = args[:name] if args.key?(:name)
40293
+ @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
40294
+ @provisioned_throughput = args[:provisioned_throughput] if args.key?(:provisioned_throughput)
40295
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
40296
+ @size_gb = args[:size_gb] if args.key?(:size_gb)
40297
+ @status = args[:status] if args.key?(:status)
40298
+ @type = args[:type] if args.key?(:type)
40299
+ @used_bytes = args[:used_bytes] if args.key?(:used_bytes)
40300
+ end
40301
+ end
40302
+
40303
+ # A list of StoragePool resources.
40304
+ class StoragePoolList
40305
+ include Google::Apis::Core::Hashable
40306
+
40307
+ #
40308
+ # Corresponds to the JSON property `etag`
40309
+ # @return [String]
40310
+ attr_accessor :etag
40311
+
40312
+ # [Output Only] Unique identifier for the resource; defined by the server.
40313
+ # Corresponds to the JSON property `id`
40314
+ # @return [String]
40315
+ attr_accessor :id
40316
+
40317
+ # A list of StoragePool resources.
40318
+ # Corresponds to the JSON property `items`
40319
+ # @return [Array<Google::Apis::ComputeV1::StoragePool>]
40320
+ attr_accessor :items
40321
+
40322
+ # [Output Only] Type of resource. Always compute#storagePoolList for lists of
40323
+ # storagePools.
40324
+ # Corresponds to the JSON property `kind`
40325
+ # @return [String]
40326
+ attr_accessor :kind
40327
+
40328
+ # [Output Only] This token allows you to get the next page of results for list
40329
+ # requests. If the number of results is larger than maxResults, use the
40330
+ # nextPageToken as a value for the query parameter pageToken in the next list
40331
+ # request. Subsequent list requests will have their own nextPageToken to
40332
+ # continue paging through the results.
40333
+ # Corresponds to the JSON property `nextPageToken`
40334
+ # @return [String]
40335
+ attr_accessor :next_page_token
40336
+
40337
+ # [Output Only] Server-defined URL for this resource.
40338
+ # Corresponds to the JSON property `selfLink`
40339
+ # @return [String]
40340
+ attr_accessor :self_link
40341
+
40342
+ # [Output Only] Unreachable resources. end_interface:
40343
+ # MixerListResponseWithEtagBuilder
40344
+ # Corresponds to the JSON property `unreachables`
40345
+ # @return [Array<String>]
40346
+ attr_accessor :unreachables
40347
+
40348
+ # [Output Only] Informational warning message.
40349
+ # Corresponds to the JSON property `warning`
40350
+ # @return [Google::Apis::ComputeV1::StoragePoolList::Warning]
40351
+ attr_accessor :warning
40352
+
40353
+ def initialize(**args)
40354
+ update!(**args)
40355
+ end
40356
+
40357
+ # Update properties of this object
40358
+ def update!(**args)
40359
+ @etag = args[:etag] if args.key?(:etag)
40360
+ @id = args[:id] if args.key?(:id)
40361
+ @items = args[:items] if args.key?(:items)
40362
+ @kind = args[:kind] if args.key?(:kind)
40363
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
40364
+ @self_link = args[:self_link] if args.key?(:self_link)
40365
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
40366
+ @warning = args[:warning] if args.key?(:warning)
40367
+ end
40368
+
40369
+ # [Output Only] Informational warning message.
40370
+ class Warning
40371
+ include Google::Apis::Core::Hashable
40372
+
40373
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
40374
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
40375
+ # Corresponds to the JSON property `code`
40376
+ # @return [String]
40377
+ attr_accessor :code
40378
+
40379
+ # [Output Only] Metadata about this warning in key: value format. For example: "
40380
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
40381
+ # Corresponds to the JSON property `data`
40382
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolList::Warning::Datum>]
40383
+ attr_accessor :data
40384
+
40385
+ # [Output Only] A human-readable description of the warning code.
40386
+ # Corresponds to the JSON property `message`
40387
+ # @return [String]
40388
+ attr_accessor :message
40389
+
40390
+ def initialize(**args)
40391
+ update!(**args)
40392
+ end
40393
+
40394
+ # Update properties of this object
40395
+ def update!(**args)
40396
+ @code = args[:code] if args.key?(:code)
40397
+ @data = args[:data] if args.key?(:data)
40398
+ @message = args[:message] if args.key?(:message)
40399
+ end
40400
+
40401
+ #
40402
+ class Datum
40403
+ include Google::Apis::Core::Hashable
40404
+
40405
+ # [Output Only] A key that provides more detail on the warning being returned.
40406
+ # For example, for warnings where there are no results in a list request for a
40407
+ # particular zone, this key might be scope and the key value might be the zone
40408
+ # name. Other examples might be a key indicating a deprecated resource and a
40409
+ # suggested replacement, or a warning about invalid network settings (for
40410
+ # example, if an instance attempts to perform IP forwarding but is not enabled
40411
+ # for IP forwarding).
40412
+ # Corresponds to the JSON property `key`
40413
+ # @return [String]
40414
+ attr_accessor :key
40415
+
40416
+ # [Output Only] A warning data value corresponding to the key.
40417
+ # Corresponds to the JSON property `value`
40418
+ # @return [String]
40419
+ attr_accessor :value
40420
+
40421
+ def initialize(**args)
40422
+ update!(**args)
40423
+ end
40424
+
40425
+ # Update properties of this object
40426
+ def update!(**args)
40427
+ @key = args[:key] if args.key?(:key)
40428
+ @value = args[:value] if args.key?(:value)
40429
+ end
40430
+ end
40431
+ end
40432
+ end
40433
+
40434
+ #
40435
+ class StoragePoolListDisks
40436
+ include Google::Apis::Core::Hashable
40437
+
40438
+ #
40439
+ # Corresponds to the JSON property `etag`
40440
+ # @return [String]
40441
+ attr_accessor :etag
40442
+
40443
+ # [Output Only] Unique identifier for the resource; defined by the server.
40444
+ # Corresponds to the JSON property `id`
40445
+ # @return [String]
40446
+ attr_accessor :id
40447
+
40448
+ # A list of StoragePoolDisk resources.
40449
+ # Corresponds to the JSON property `items`
40450
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolDisk>]
40451
+ attr_accessor :items
40452
+
40453
+ # [Output Only] Type of resource. Always compute#storagePoolListDisks for lists
40454
+ # of disks in a storagePool.
40455
+ # Corresponds to the JSON property `kind`
40456
+ # @return [String]
40457
+ attr_accessor :kind
40458
+
40459
+ # [Output Only] This token allows you to get the next page of results for list
40460
+ # requests. If the number of results is larger than maxResults, use the
40461
+ # nextPageToken as a value for the query parameter pageToken in the next list
40462
+ # request. Subsequent list requests will have their own nextPageToken to
40463
+ # continue paging through the results.
40464
+ # Corresponds to the JSON property `nextPageToken`
40465
+ # @return [String]
40466
+ attr_accessor :next_page_token
40467
+
40468
+ # [Output Only] Server-defined URL for this resource.
40469
+ # Corresponds to the JSON property `selfLink`
40470
+ # @return [String]
40471
+ attr_accessor :self_link
40472
+
40473
+ # [Output Only] Unreachable resources. end_interface:
40474
+ # MixerListResponseWithEtagBuilder
40475
+ # Corresponds to the JSON property `unreachables`
40476
+ # @return [Array<String>]
40477
+ attr_accessor :unreachables
40478
+
40479
+ # [Output Only] Informational warning message.
40480
+ # Corresponds to the JSON property `warning`
40481
+ # @return [Google::Apis::ComputeV1::StoragePoolListDisks::Warning]
40482
+ attr_accessor :warning
40483
+
40484
+ def initialize(**args)
40485
+ update!(**args)
40486
+ end
40487
+
40488
+ # Update properties of this object
40489
+ def update!(**args)
40490
+ @etag = args[:etag] if args.key?(:etag)
40491
+ @id = args[:id] if args.key?(:id)
40492
+ @items = args[:items] if args.key?(:items)
40493
+ @kind = args[:kind] if args.key?(:kind)
40494
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
40495
+ @self_link = args[:self_link] if args.key?(:self_link)
40496
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
40497
+ @warning = args[:warning] if args.key?(:warning)
40498
+ end
40499
+
40500
+ # [Output Only] Informational warning message.
40501
+ class Warning
40502
+ include Google::Apis::Core::Hashable
40503
+
40504
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
40505
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
40506
+ # Corresponds to the JSON property `code`
40507
+ # @return [String]
40508
+ attr_accessor :code
40509
+
40510
+ # [Output Only] Metadata about this warning in key: value format. For example: "
40511
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
40512
+ # Corresponds to the JSON property `data`
40513
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolListDisks::Warning::Datum>]
40514
+ attr_accessor :data
40515
+
40516
+ # [Output Only] A human-readable description of the warning code.
40517
+ # Corresponds to the JSON property `message`
40518
+ # @return [String]
40519
+ attr_accessor :message
40520
+
40521
+ def initialize(**args)
40522
+ update!(**args)
40523
+ end
40524
+
40525
+ # Update properties of this object
40526
+ def update!(**args)
40527
+ @code = args[:code] if args.key?(:code)
40528
+ @data = args[:data] if args.key?(:data)
40529
+ @message = args[:message] if args.key?(:message)
40530
+ end
40531
+
40532
+ #
40533
+ class Datum
40534
+ include Google::Apis::Core::Hashable
40535
+
40536
+ # [Output Only] A key that provides more detail on the warning being returned.
40537
+ # For example, for warnings where there are no results in a list request for a
40538
+ # particular zone, this key might be scope and the key value might be the zone
40539
+ # name. Other examples might be a key indicating a deprecated resource and a
40540
+ # suggested replacement, or a warning about invalid network settings (for
40541
+ # example, if an instance attempts to perform IP forwarding but is not enabled
40542
+ # for IP forwarding).
40543
+ # Corresponds to the JSON property `key`
40544
+ # @return [String]
40545
+ attr_accessor :key
40546
+
40547
+ # [Output Only] A warning data value corresponding to the key.
40548
+ # Corresponds to the JSON property `value`
40549
+ # @return [String]
40550
+ attr_accessor :value
40551
+
40552
+ def initialize(**args)
40553
+ update!(**args)
40554
+ end
40555
+
40556
+ # Update properties of this object
40557
+ def update!(**args)
40558
+ @key = args[:key] if args.key?(:key)
40559
+ @value = args[:value] if args.key?(:value)
40560
+ end
40561
+ end
40562
+ end
40563
+ end
40564
+
40565
+ # [Output Only] Contains output only fields.
40566
+ class StoragePoolResourceStatus
40567
+ include Google::Apis::Core::Hashable
40568
+
40569
+ # [Output Only] Number of disks used.
40570
+ # Corresponds to the JSON property `diskCount`
40571
+ # @return [Fixnum]
40572
+ attr_accessor :disk_count
40573
+
40574
+ # [Output Only] Timestamp of the last successful resize in RFC3339 text format.
40575
+ # Corresponds to the JSON property `lastResizeTimestamp`
40576
+ # @return [String]
40577
+ attr_accessor :last_resize_timestamp
40578
+
40579
+ # [Output Only] Maximum allowed aggregate disk size in gigabytes.
40580
+ # Corresponds to the JSON property `maxTotalProvisionedDiskCapacityGb`
40581
+ # @return [Fixnum]
40582
+ attr_accessor :max_total_provisioned_disk_capacity_gb
40583
+
40584
+ # [Output Only] Space used by data stored in disks within the storage pool (in
40585
+ # bytes). This will reflect the total number of bytes written to the disks in
40586
+ # the pool, in contrast to the capacity of those disks.
40587
+ # Corresponds to the JSON property `poolUsedCapacityBytes`
40588
+ # @return [Fixnum]
40589
+ attr_accessor :pool_used_capacity_bytes
40590
+
40591
+ # Sum of all the disks' provisioned IOPS, minus some amount that is allowed per
40592
+ # disk that is not counted towards pool's IOPS capacity.
40593
+ # Corresponds to the JSON property `poolUsedIops`
40594
+ # @return [Fixnum]
40595
+ attr_accessor :pool_used_iops
40596
+
40597
+ # [Output Only] Sum of all the disks' provisioned throughput in MB/s.
40598
+ # Corresponds to the JSON property `poolUsedThroughput`
40599
+ # @return [Fixnum]
40600
+ attr_accessor :pool_used_throughput
40601
+
40602
+ # [Output Only] Amount of data written into the pool, before it is compacted.
40603
+ # Corresponds to the JSON property `poolUserWrittenBytes`
40604
+ # @return [Fixnum]
40605
+ attr_accessor :pool_user_written_bytes
40606
+
40607
+ # [Output Only] Sum of all the capacity provisioned in disks in this storage
40608
+ # pool. A disk's provisioned capacity is the same as its total capacity.
40609
+ # Corresponds to the JSON property `totalProvisionedDiskCapacityGb`
40610
+ # @return [Fixnum]
40611
+ attr_accessor :total_provisioned_disk_capacity_gb
40612
+
40613
+ # [Output Only] Sum of all the disks' provisioned IOPS.
40614
+ # Corresponds to the JSON property `totalProvisionedDiskIops`
40615
+ # @return [Fixnum]
40616
+ attr_accessor :total_provisioned_disk_iops
40617
+
40618
+ # [Output Only] Sum of all the disks' provisioned throughput in MB/s, minus some
40619
+ # amount that is allowed per disk that is not counted towards pool's throughput
40620
+ # capacity.
40621
+ # Corresponds to the JSON property `totalProvisionedDiskThroughput`
40622
+ # @return [Fixnum]
40623
+ attr_accessor :total_provisioned_disk_throughput
40624
+
40625
+ def initialize(**args)
40626
+ update!(**args)
40627
+ end
40628
+
40629
+ # Update properties of this object
40630
+ def update!(**args)
40631
+ @disk_count = args[:disk_count] if args.key?(:disk_count)
40632
+ @last_resize_timestamp = args[:last_resize_timestamp] if args.key?(:last_resize_timestamp)
40633
+ @max_total_provisioned_disk_capacity_gb = args[:max_total_provisioned_disk_capacity_gb] if args.key?(:max_total_provisioned_disk_capacity_gb)
40634
+ @pool_used_capacity_bytes = args[:pool_used_capacity_bytes] if args.key?(:pool_used_capacity_bytes)
40635
+ @pool_used_iops = args[:pool_used_iops] if args.key?(:pool_used_iops)
40636
+ @pool_used_throughput = args[:pool_used_throughput] if args.key?(:pool_used_throughput)
40637
+ @pool_user_written_bytes = args[:pool_user_written_bytes] if args.key?(:pool_user_written_bytes)
40638
+ @total_provisioned_disk_capacity_gb = args[:total_provisioned_disk_capacity_gb] if args.key?(:total_provisioned_disk_capacity_gb)
40639
+ @total_provisioned_disk_iops = args[:total_provisioned_disk_iops] if args.key?(:total_provisioned_disk_iops)
40640
+ @total_provisioned_disk_throughput = args[:total_provisioned_disk_throughput] if args.key?(:total_provisioned_disk_throughput)
40641
+ end
40642
+ end
40643
+
40644
+ #
40645
+ class StoragePoolType
40646
+ include Google::Apis::Core::Hashable
40647
+
40648
+ # [Output Only] Creation timestamp in RFC3339 text format.
40649
+ # Corresponds to the JSON property `creationTimestamp`
40650
+ # @return [String]
40651
+ attr_accessor :creation_timestamp
40652
+
40653
+ # Deprecation status for a public resource.
40654
+ # Corresponds to the JSON property `deprecated`
40655
+ # @return [Google::Apis::ComputeV1::DeprecationStatus]
40656
+ attr_accessor :deprecated
40657
+
40658
+ # [Output Only] An optional description of this resource.
40659
+ # Corresponds to the JSON property `description`
40660
+ # @return [String]
40661
+ attr_accessor :description
40662
+
40663
+ # [Output Only] The unique identifier for the resource. This identifier is
40664
+ # defined by the server.
40665
+ # Corresponds to the JSON property `id`
40666
+ # @return [Fixnum]
40667
+ attr_accessor :id
40668
+
40669
+ # [Output Only] Type of the resource. Always compute#storagePoolType for storage
40670
+ # pool types.
40671
+ # Corresponds to the JSON property `kind`
40672
+ # @return [String]
40673
+ attr_accessor :kind
40674
+
40675
+ # [Output Only] Maximum storage pool size in GB.
40676
+ # Corresponds to the JSON property `maxPoolProvisionedCapacityGb`
40677
+ # @return [Fixnum]
40678
+ attr_accessor :max_pool_provisioned_capacity_gb
40679
+
40680
+ # [Output Only] Maximum provisioned IOPS.
40681
+ # Corresponds to the JSON property `maxPoolProvisionedIops`
40682
+ # @return [Fixnum]
40683
+ attr_accessor :max_pool_provisioned_iops
40684
+
40685
+ # [Output Only] Maximum provisioned throughput.
40686
+ # Corresponds to the JSON property `maxPoolProvisionedThroughput`
40687
+ # @return [Fixnum]
40688
+ attr_accessor :max_pool_provisioned_throughput
40689
+
40690
+ # [Output Only] Minimum storage pool size in GB.
40691
+ # Corresponds to the JSON property `minPoolProvisionedCapacityGb`
40692
+ # @return [Fixnum]
40693
+ attr_accessor :min_pool_provisioned_capacity_gb
40694
+
40695
+ # [Output Only] Minimum provisioned IOPS.
40696
+ # Corresponds to the JSON property `minPoolProvisionedIops`
40697
+ # @return [Fixnum]
40698
+ attr_accessor :min_pool_provisioned_iops
40699
+
40700
+ # [Output Only] Minimum provisioned throughput.
40701
+ # Corresponds to the JSON property `minPoolProvisionedThroughput`
40702
+ # @return [Fixnum]
40703
+ attr_accessor :min_pool_provisioned_throughput
40704
+
40705
+ # [Deprecated] This field is deprecated. Use minPoolProvisionedCapacityGb
40706
+ # instead.
40707
+ # Corresponds to the JSON property `minSizeGb`
40708
+ # @return [Fixnum]
40709
+ attr_accessor :min_size_gb
40710
+
40711
+ # [Output Only] Name of the resource.
40712
+ # Corresponds to the JSON property `name`
40713
+ # @return [String]
40714
+ attr_accessor :name
40715
+
40716
+ # [Output Only] Server-defined URL for the resource.
40717
+ # Corresponds to the JSON property `selfLink`
40718
+ # @return [String]
40719
+ attr_accessor :self_link
40720
+
40721
+ # [Output Only] Server-defined URL for this resource with the resource id.
40722
+ # Corresponds to the JSON property `selfLinkWithId`
40723
+ # @return [String]
40724
+ attr_accessor :self_link_with_id
40725
+
40726
+ # [Output Only] The list of disk types supported in this storage pool type.
40727
+ # Corresponds to the JSON property `supportedDiskTypes`
40728
+ # @return [Array<String>]
40729
+ attr_accessor :supported_disk_types
40730
+
40731
+ # [Output Only] URL of the zone where the storage pool type resides. You must
40732
+ # specify this field as part of the HTTP request URL. It is not settable as a
40733
+ # field in the request body.
40734
+ # Corresponds to the JSON property `zone`
40735
+ # @return [String]
40736
+ attr_accessor :zone
40737
+
40738
+ def initialize(**args)
40739
+ update!(**args)
40740
+ end
40741
+
40742
+ # Update properties of this object
40743
+ def update!(**args)
40744
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
40745
+ @deprecated = args[:deprecated] if args.key?(:deprecated)
40746
+ @description = args[:description] if args.key?(:description)
40747
+ @id = args[:id] if args.key?(:id)
40748
+ @kind = args[:kind] if args.key?(:kind)
40749
+ @max_pool_provisioned_capacity_gb = args[:max_pool_provisioned_capacity_gb] if args.key?(:max_pool_provisioned_capacity_gb)
40750
+ @max_pool_provisioned_iops = args[:max_pool_provisioned_iops] if args.key?(:max_pool_provisioned_iops)
40751
+ @max_pool_provisioned_throughput = args[:max_pool_provisioned_throughput] if args.key?(:max_pool_provisioned_throughput)
40752
+ @min_pool_provisioned_capacity_gb = args[:min_pool_provisioned_capacity_gb] if args.key?(:min_pool_provisioned_capacity_gb)
40753
+ @min_pool_provisioned_iops = args[:min_pool_provisioned_iops] if args.key?(:min_pool_provisioned_iops)
40754
+ @min_pool_provisioned_throughput = args[:min_pool_provisioned_throughput] if args.key?(:min_pool_provisioned_throughput)
40755
+ @min_size_gb = args[:min_size_gb] if args.key?(:min_size_gb)
40756
+ @name = args[:name] if args.key?(:name)
40757
+ @self_link = args[:self_link] if args.key?(:self_link)
40758
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
40759
+ @supported_disk_types = args[:supported_disk_types] if args.key?(:supported_disk_types)
40760
+ @zone = args[:zone] if args.key?(:zone)
40761
+ end
40762
+ end
40763
+
40764
+ #
40765
+ class StoragePoolTypeAggregatedList
40766
+ include Google::Apis::Core::Hashable
40767
+
40768
+ # [Output Only] Unique identifier for the resource; defined by the server.
40769
+ # Corresponds to the JSON property `id`
40770
+ # @return [String]
40771
+ attr_accessor :id
40772
+
40773
+ # A list of StoragePoolTypesScopedList resources.
40774
+ # Corresponds to the JSON property `items`
40775
+ # @return [Hash<String,Google::Apis::ComputeV1::StoragePoolTypesScopedList>]
40776
+ attr_accessor :items
40777
+
40778
+ # [Output Only] Type of resource. Always compute#storagePoolTypeAggregatedList .
40779
+ # Corresponds to the JSON property `kind`
40780
+ # @return [String]
40781
+ attr_accessor :kind
40782
+
40783
+ # [Output Only] This token allows you to get the next page of results for list
40784
+ # requests. If the number of results is larger than maxResults, use the
40785
+ # nextPageToken as a value for the query parameter pageToken in the next list
40786
+ # request. Subsequent list requests will have their own nextPageToken to
40787
+ # continue paging through the results.
40788
+ # Corresponds to the JSON property `nextPageToken`
40789
+ # @return [String]
40790
+ attr_accessor :next_page_token
40791
+
40792
+ # [Output Only] Server-defined URL for this resource.
40793
+ # Corresponds to the JSON property `selfLink`
40794
+ # @return [String]
40795
+ attr_accessor :self_link
40796
+
40797
+ # [Output Only] Informational warning message.
40798
+ # Corresponds to the JSON property `warning`
40799
+ # @return [Google::Apis::ComputeV1::StoragePoolTypeAggregatedList::Warning]
40800
+ attr_accessor :warning
40801
+
40802
+ def initialize(**args)
40803
+ update!(**args)
40804
+ end
40805
+
40806
+ # Update properties of this object
40807
+ def update!(**args)
40808
+ @id = args[:id] if args.key?(:id)
40809
+ @items = args[:items] if args.key?(:items)
40810
+ @kind = args[:kind] if args.key?(:kind)
40811
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
40812
+ @self_link = args[:self_link] if args.key?(:self_link)
40813
+ @warning = args[:warning] if args.key?(:warning)
40814
+ end
40815
+
40816
+ # [Output Only] Informational warning message.
40817
+ class Warning
40818
+ include Google::Apis::Core::Hashable
40819
+
40820
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
40821
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
40822
+ # Corresponds to the JSON property `code`
40823
+ # @return [String]
40824
+ attr_accessor :code
40825
+
40826
+ # [Output Only] Metadata about this warning in key: value format. For example: "
40827
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
40828
+ # Corresponds to the JSON property `data`
40829
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolTypeAggregatedList::Warning::Datum>]
40830
+ attr_accessor :data
40831
+
40832
+ # [Output Only] A human-readable description of the warning code.
40833
+ # Corresponds to the JSON property `message`
40834
+ # @return [String]
40835
+ attr_accessor :message
40836
+
40837
+ def initialize(**args)
40838
+ update!(**args)
40839
+ end
40840
+
40841
+ # Update properties of this object
40842
+ def update!(**args)
40843
+ @code = args[:code] if args.key?(:code)
40844
+ @data = args[:data] if args.key?(:data)
40845
+ @message = args[:message] if args.key?(:message)
40846
+ end
40847
+
40848
+ #
40849
+ class Datum
40850
+ include Google::Apis::Core::Hashable
40851
+
40852
+ # [Output Only] A key that provides more detail on the warning being returned.
40853
+ # For example, for warnings where there are no results in a list request for a
40854
+ # particular zone, this key might be scope and the key value might be the zone
40855
+ # name. Other examples might be a key indicating a deprecated resource and a
40856
+ # suggested replacement, or a warning about invalid network settings (for
40857
+ # example, if an instance attempts to perform IP forwarding but is not enabled
40858
+ # for IP forwarding).
40859
+ # Corresponds to the JSON property `key`
40860
+ # @return [String]
40861
+ attr_accessor :key
40862
+
40863
+ # [Output Only] A warning data value corresponding to the key.
40864
+ # Corresponds to the JSON property `value`
40865
+ # @return [String]
40866
+ attr_accessor :value
40867
+
40868
+ def initialize(**args)
40869
+ update!(**args)
40870
+ end
40871
+
40872
+ # Update properties of this object
40873
+ def update!(**args)
40874
+ @key = args[:key] if args.key?(:key)
40875
+ @value = args[:value] if args.key?(:value)
40876
+ end
40877
+ end
40878
+ end
40879
+ end
40880
+
40881
+ # Contains a list of storage pool types.
40882
+ class StoragePoolTypeList
40883
+ include Google::Apis::Core::Hashable
40884
+
40885
+ # [Output Only] Unique identifier for the resource; defined by the server.
40886
+ # Corresponds to the JSON property `id`
40887
+ # @return [String]
40888
+ attr_accessor :id
40889
+
40890
+ # A list of StoragePoolType resources.
40891
+ # Corresponds to the JSON property `items`
40892
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolType>]
40893
+ attr_accessor :items
40894
+
40895
+ # [Output Only] Type of resource. Always compute#storagePoolTypeList for storage
40896
+ # pool types.
40897
+ # Corresponds to the JSON property `kind`
40898
+ # @return [String]
40899
+ attr_accessor :kind
40900
+
40901
+ # [Output Only] This token allows you to get the next page of results for list
40902
+ # requests. If the number of results is larger than maxResults, use the
40903
+ # nextPageToken as a value for the query parameter pageToken in the next list
40904
+ # request. Subsequent list requests will have their own nextPageToken to
40905
+ # continue paging through the results.
40906
+ # Corresponds to the JSON property `nextPageToken`
40907
+ # @return [String]
40908
+ attr_accessor :next_page_token
40909
+
40910
+ # [Output Only] Server-defined URL for this resource.
40911
+ # Corresponds to the JSON property `selfLink`
40912
+ # @return [String]
40913
+ attr_accessor :self_link
40914
+
40915
+ # [Output Only] Informational warning message.
40916
+ # Corresponds to the JSON property `warning`
40917
+ # @return [Google::Apis::ComputeV1::StoragePoolTypeList::Warning]
40918
+ attr_accessor :warning
40919
+
40920
+ def initialize(**args)
40921
+ update!(**args)
40922
+ end
40923
+
40924
+ # Update properties of this object
40925
+ def update!(**args)
40926
+ @id = args[:id] if args.key?(:id)
40927
+ @items = args[:items] if args.key?(:items)
40928
+ @kind = args[:kind] if args.key?(:kind)
40929
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
40930
+ @self_link = args[:self_link] if args.key?(:self_link)
40931
+ @warning = args[:warning] if args.key?(:warning)
40932
+ end
40933
+
40934
+ # [Output Only] Informational warning message.
40935
+ class Warning
40936
+ include Google::Apis::Core::Hashable
40937
+
40938
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
40939
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
40940
+ # Corresponds to the JSON property `code`
40941
+ # @return [String]
40942
+ attr_accessor :code
40943
+
40944
+ # [Output Only] Metadata about this warning in key: value format. For example: "
40945
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
40946
+ # Corresponds to the JSON property `data`
40947
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolTypeList::Warning::Datum>]
40948
+ attr_accessor :data
40949
+
40950
+ # [Output Only] A human-readable description of the warning code.
40951
+ # Corresponds to the JSON property `message`
40952
+ # @return [String]
40953
+ attr_accessor :message
40954
+
40955
+ def initialize(**args)
40956
+ update!(**args)
40957
+ end
40958
+
40959
+ # Update properties of this object
40960
+ def update!(**args)
40961
+ @code = args[:code] if args.key?(:code)
40962
+ @data = args[:data] if args.key?(:data)
40963
+ @message = args[:message] if args.key?(:message)
40964
+ end
40965
+
40966
+ #
40967
+ class Datum
40968
+ include Google::Apis::Core::Hashable
40969
+
40970
+ # [Output Only] A key that provides more detail on the warning being returned.
40971
+ # For example, for warnings where there are no results in a list request for a
40972
+ # particular zone, this key might be scope and the key value might be the zone
40973
+ # name. Other examples might be a key indicating a deprecated resource and a
40974
+ # suggested replacement, or a warning about invalid network settings (for
40975
+ # example, if an instance attempts to perform IP forwarding but is not enabled
40976
+ # for IP forwarding).
40977
+ # Corresponds to the JSON property `key`
40978
+ # @return [String]
40979
+ attr_accessor :key
40980
+
40981
+ # [Output Only] A warning data value corresponding to the key.
40982
+ # Corresponds to the JSON property `value`
40983
+ # @return [String]
40984
+ attr_accessor :value
40985
+
40986
+ def initialize(**args)
40987
+ update!(**args)
40988
+ end
40989
+
40990
+ # Update properties of this object
40991
+ def update!(**args)
40992
+ @key = args[:key] if args.key?(:key)
40993
+ @value = args[:value] if args.key?(:value)
40994
+ end
40995
+ end
40996
+ end
40997
+ end
40998
+
40999
+ #
41000
+ class StoragePoolTypesScopedList
41001
+ include Google::Apis::Core::Hashable
41002
+
41003
+ # [Output Only] A list of storage pool types contained in this scope.
41004
+ # Corresponds to the JSON property `storagePoolTypes`
41005
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolType>]
41006
+ attr_accessor :storage_pool_types
41007
+
41008
+ # [Output Only] Informational warning which replaces the list of storage pool
41009
+ # types when the list is empty.
41010
+ # Corresponds to the JSON property `warning`
41011
+ # @return [Google::Apis::ComputeV1::StoragePoolTypesScopedList::Warning]
41012
+ attr_accessor :warning
41013
+
41014
+ def initialize(**args)
41015
+ update!(**args)
41016
+ end
41017
+
41018
+ # Update properties of this object
41019
+ def update!(**args)
41020
+ @storage_pool_types = args[:storage_pool_types] if args.key?(:storage_pool_types)
41021
+ @warning = args[:warning] if args.key?(:warning)
41022
+ end
41023
+
41024
+ # [Output Only] Informational warning which replaces the list of storage pool
41025
+ # types when the list is empty.
41026
+ class Warning
41027
+ include Google::Apis::Core::Hashable
41028
+
41029
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
41030
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
41031
+ # Corresponds to the JSON property `code`
41032
+ # @return [String]
41033
+ attr_accessor :code
41034
+
41035
+ # [Output Only] Metadata about this warning in key: value format. For example: "
41036
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
41037
+ # Corresponds to the JSON property `data`
41038
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolTypesScopedList::Warning::Datum>]
41039
+ attr_accessor :data
41040
+
41041
+ # [Output Only] A human-readable description of the warning code.
41042
+ # Corresponds to the JSON property `message`
41043
+ # @return [String]
41044
+ attr_accessor :message
41045
+
41046
+ def initialize(**args)
41047
+ update!(**args)
41048
+ end
41049
+
41050
+ # Update properties of this object
41051
+ def update!(**args)
41052
+ @code = args[:code] if args.key?(:code)
41053
+ @data = args[:data] if args.key?(:data)
41054
+ @message = args[:message] if args.key?(:message)
41055
+ end
41056
+
41057
+ #
41058
+ class Datum
41059
+ include Google::Apis::Core::Hashable
41060
+
41061
+ # [Output Only] A key that provides more detail on the warning being returned.
41062
+ # For example, for warnings where there are no results in a list request for a
41063
+ # particular zone, this key might be scope and the key value might be the zone
41064
+ # name. Other examples might be a key indicating a deprecated resource and a
41065
+ # suggested replacement, or a warning about invalid network settings (for
41066
+ # example, if an instance attempts to perform IP forwarding but is not enabled
41067
+ # for IP forwarding).
41068
+ # Corresponds to the JSON property `key`
41069
+ # @return [String]
41070
+ attr_accessor :key
41071
+
41072
+ # [Output Only] A warning data value corresponding to the key.
41073
+ # Corresponds to the JSON property `value`
41074
+ # @return [String]
41075
+ attr_accessor :value
41076
+
41077
+ def initialize(**args)
41078
+ update!(**args)
41079
+ end
41080
+
41081
+ # Update properties of this object
41082
+ def update!(**args)
41083
+ @key = args[:key] if args.key?(:key)
41084
+ @value = args[:value] if args.key?(:value)
41085
+ end
41086
+ end
41087
+ end
41088
+ end
41089
+
41090
+ #
41091
+ class StoragePoolsScopedList
41092
+ include Google::Apis::Core::Hashable
41093
+
41094
+ # [Output Only] A list of storage pool contained in this scope.
41095
+ # Corresponds to the JSON property `storagePools`
41096
+ # @return [Array<Google::Apis::ComputeV1::StoragePool>]
41097
+ attr_accessor :storage_pools
41098
+
41099
+ # [Output Only] Informational warning which replaces the list of storage pool
41100
+ # when the list is empty.
41101
+ # Corresponds to the JSON property `warning`
41102
+ # @return [Google::Apis::ComputeV1::StoragePoolsScopedList::Warning]
41103
+ attr_accessor :warning
41104
+
41105
+ def initialize(**args)
41106
+ update!(**args)
41107
+ end
41108
+
41109
+ # Update properties of this object
41110
+ def update!(**args)
41111
+ @storage_pools = args[:storage_pools] if args.key?(:storage_pools)
41112
+ @warning = args[:warning] if args.key?(:warning)
41113
+ end
41114
+
41115
+ # [Output Only] Informational warning which replaces the list of storage pool
41116
+ # when the list is empty.
41117
+ class Warning
41118
+ include Google::Apis::Core::Hashable
41119
+
41120
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
41121
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
41122
+ # Corresponds to the JSON property `code`
41123
+ # @return [String]
41124
+ attr_accessor :code
41125
+
41126
+ # [Output Only] Metadata about this warning in key: value format. For example: "
41127
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
41128
+ # Corresponds to the JSON property `data`
41129
+ # @return [Array<Google::Apis::ComputeV1::StoragePoolsScopedList::Warning::Datum>]
41130
+ attr_accessor :data
41131
+
41132
+ # [Output Only] A human-readable description of the warning code.
41133
+ # Corresponds to the JSON property `message`
41134
+ # @return [String]
41135
+ attr_accessor :message
41136
+
41137
+ def initialize(**args)
41138
+ update!(**args)
41139
+ end
41140
+
41141
+ # Update properties of this object
41142
+ def update!(**args)
41143
+ @code = args[:code] if args.key?(:code)
41144
+ @data = args[:data] if args.key?(:data)
41145
+ @message = args[:message] if args.key?(:message)
41146
+ end
41147
+
41148
+ #
41149
+ class Datum
41150
+ include Google::Apis::Core::Hashable
41151
+
41152
+ # [Output Only] A key that provides more detail on the warning being returned.
41153
+ # For example, for warnings where there are no results in a list request for a
41154
+ # particular zone, this key might be scope and the key value might be the zone
41155
+ # name. Other examples might be a key indicating a deprecated resource and a
41156
+ # suggested replacement, or a warning about invalid network settings (for
41157
+ # example, if an instance attempts to perform IP forwarding but is not enabled
41158
+ # for IP forwarding).
41159
+ # Corresponds to the JSON property `key`
41160
+ # @return [String]
41161
+ attr_accessor :key
41162
+
41163
+ # [Output Only] A warning data value corresponding to the key.
41164
+ # Corresponds to the JSON property `value`
41165
+ # @return [String]
41166
+ attr_accessor :value
41167
+
41168
+ def initialize(**args)
41169
+ update!(**args)
41170
+ end
41171
+
41172
+ # Update properties of this object
41173
+ def update!(**args)
41174
+ @key = args[:key] if args.key?(:key)
41175
+ @value = args[:value] if args.key?(:value)
41176
+ end
41177
+ end
41178
+ end
41179
+ end
41180
+
39923
41181
  # Represents a Subnetwork resource. A subnetwork (also known as a subnet) is a
39924
41182
  # logical partition of a Virtual Private Cloud network with one primary IP range
39925
41183
  # and zero or more secondary IP ranges. For more information, read Virtual