Class: Google::Apis::ComputeBeta::StoragePool

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb

Overview

Represents a zonal storage pool resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ StoragePool

Returns a new instance of StoragePool.



60290
60291
60292
# File 'lib/google/apis/compute_beta/classes.rb', line 60290

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#capacity_provisioning_typeString

Provisioning type of the byte capacity of the pool. Corresponds to the JSON property capacityProvisioningType

Returns:

  • (String)


60154
60155
60156
# File 'lib/google/apis/compute_beta/classes.rb', line 60154

def capacity_provisioning_type
  @capacity_provisioning_type
end

#creation_timestampString

Output only. [Output Only] Creation timestamp inRFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


60160
60161
60162
# File 'lib/google/apis/compute_beta/classes.rb', line 60160

def creation_timestamp
  @creation_timestamp
end

#descriptionString

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


60166
60167
60168
# File 'lib/google/apis/compute_beta/classes.rb', line 60166

def description
  @description
end

#exapool_provisioned_capacity_gbGoogle::Apis::ComputeBeta::StoragePoolExapoolProvisionedCapacityGb

Exapool provisioned capacities for each SKU type Corresponds to the JSON property exapoolProvisionedCapacityGb



60171
60172
60173
# File 'lib/google/apis/compute_beta/classes.rb', line 60171

def exapool_provisioned_capacity_gb
  @exapool_provisioned_capacity_gb
end

#idFixnum

Output only. [Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


60178
60179
60180
# File 'lib/google/apis/compute_beta/classes.rb', line 60178

def id
  @id
end

#kindString

Output only. [Output Only] Type of the resource. Always compute#storagePool for storage pools. Corresponds to the JSON property kind

Returns:

  • (String)


60184
60185
60186
# File 'lib/google/apis/compute_beta/classes.rb', line 60184

def kind
  @kind
end

#label_fingerprintString

A fingerprint for the labels being applied to this storage pool, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a storage pool. Corresponds to the JSON property labelFingerprint NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


60197
60198
60199
# File 'lib/google/apis/compute_beta/classes.rb', line 60197

def label_fingerprint
  @label_fingerprint
end

#labelsHash<String,String>

Labels to apply to this storage pool. These can be later modified by the setLabels method. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


60203
60204
60205
# File 'lib/google/apis/compute_beta/classes.rb', line 60203

def labels
  @labels
end

#nameString

Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply withRFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Corresponds to the JSON property name

Returns:

  • (String)


60214
60215
60216
# File 'lib/google/apis/compute_beta/classes.rb', line 60214

def name
  @name
end

#paramsGoogle::Apis::ComputeBeta::StoragePoolParams

Additional storage pool params. Corresponds to the JSON property params



60219
60220
60221
# File 'lib/google/apis/compute_beta/classes.rb', line 60219

def params
  @params
end

#performance_provisioning_typeString

Provisioning type of the performance-related parameters of the pool, such as throughput and IOPS. Corresponds to the JSON property performanceProvisioningType

Returns:

  • (String)


60225
60226
60227
# File 'lib/google/apis/compute_beta/classes.rb', line 60225

def performance_provisioning_type
  @performance_provisioning_type
end

#pool_provisioned_capacity_gbFixnum

Size of the storage pool in GiB. For more information about the size limits, see https://cloud.google.com/compute/docs/disks/storage-pools. Corresponds to the JSON property poolProvisionedCapacityGb

Returns:

  • (Fixnum)


60231
60232
60233
# File 'lib/google/apis/compute_beta/classes.rb', line 60231

def pool_provisioned_capacity_gb
  @pool_provisioned_capacity_gb
end

#pool_provisioned_iopsFixnum

Provisioned IOPS of the storage pool. Only relevant if the storage pool type is hyperdisk-balanced. Corresponds to the JSON property poolProvisionedIops

Returns:

  • (Fixnum)


60237
60238
60239
# File 'lib/google/apis/compute_beta/classes.rb', line 60237

def pool_provisioned_iops
  @pool_provisioned_iops
end

#pool_provisioned_throughputFixnum

Provisioned throughput of the storage pool in MiB/s. Only relevant if the storage pool type is hyperdisk-balanced or hyperdisk-throughput. Corresponds to the JSON property poolProvisionedThroughput

Returns:

  • (Fixnum)


60243
60244
60245
# File 'lib/google/apis/compute_beta/classes.rb', line 60243

def pool_provisioned_throughput
  @pool_provisioned_throughput
end

#resource_statusGoogle::Apis::ComputeBeta::StoragePoolResourceStatus

[Output Only] Contains output only fields. Corresponds to the JSON property resourceStatus



60248
60249
60250
# File 'lib/google/apis/compute_beta/classes.rb', line 60248

def resource_status
  @resource_status
end

Output only. [Output Only] Server-defined fully-qualified URL for this resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


60254
60255
60256
# File 'lib/google/apis/compute_beta/classes.rb', line 60254

def self_link
  @self_link
end

Output only. [Output Only] Server-defined URL for this resource's resource id. Corresponds to the JSON property selfLinkWithId

Returns:

  • (String)


60259
60260
60261
# File 'lib/google/apis/compute_beta/classes.rb', line 60259

def self_link_with_id
  @self_link_with_id
end

#stateString

Output only. [Output Only] The status of storage pool creation.

  • CREATING: Storage pool is provisioning. storagePool.
  • FAILED: Storage pool creation failed.
  • READY: Storage pool is ready for use.
  • DELETING: Storage pool is deleting. Corresponds to the JSON property state

Returns:

  • (String)


60271
60272
60273
# File 'lib/google/apis/compute_beta/classes.rb', line 60271

def state
  @state
end

#statusGoogle::Apis::ComputeBeta::StoragePoolResourceStatus

[Output Only] Contains output only fields. Corresponds to the JSON property status



60276
60277
60278
# File 'lib/google/apis/compute_beta/classes.rb', line 60276

def status
  @status
end

#storage_pool_typeString

Type of the storage pool. Corresponds to the JSON property storagePoolType

Returns:

  • (String)


60281
60282
60283
# File 'lib/google/apis/compute_beta/classes.rb', line 60281

def storage_pool_type
  @storage_pool_type
end

#zoneString

Output only. [Output Only] URL of the zone where the storage pool resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. Corresponds to the JSON property zone

Returns:

  • (String)


60288
60289
60290
# File 'lib/google/apis/compute_beta/classes.rb', line 60288

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



60295
60296
60297
60298
60299
60300
60301
60302
60303
60304
60305
60306
60307
60308
60309
60310
60311
60312
60313
60314
60315
60316
60317
# File 'lib/google/apis/compute_beta/classes.rb', line 60295

def update!(**args)
  @capacity_provisioning_type = args[:capacity_provisioning_type] if args.key?(:capacity_provisioning_type)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @description = args[:description] if args.key?(:description)
  @exapool_provisioned_capacity_gb = args[:exapool_provisioned_capacity_gb] if args.key?(:exapool_provisioned_capacity_gb)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @params = args[:params] if args.key?(:params)
  @performance_provisioning_type = args[:performance_provisioning_type] if args.key?(:performance_provisioning_type)
  @pool_provisioned_capacity_gb = args[:pool_provisioned_capacity_gb] if args.key?(:pool_provisioned_capacity_gb)
  @pool_provisioned_iops = args[:pool_provisioned_iops] if args.key?(:pool_provisioned_iops)
  @pool_provisioned_throughput = args[:pool_provisioned_throughput] if args.key?(:pool_provisioned_throughput)
  @resource_status = args[:resource_status] if args.key?(:resource_status)
  @self_link = args[:self_link] if args.key?(:self_link)
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
  @state = args[:state] if args.key?(:state)
  @status = args[:status] if args.key?(:status)
  @storage_pool_type = args[:storage_pool_type] if args.key?(:storage_pool_type)
  @zone = args[:zone] if args.key?(:zone)
end