Class: Google::Apis::ComputeV1::StoragePool

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/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.



60047
60048
60049
# File 'lib/google/apis/compute_v1/classes.rb', line 60047

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)


59911
59912
59913
# File 'lib/google/apis/compute_v1/classes.rb', line 59911

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)


59917
59918
59919
# File 'lib/google/apis/compute_v1/classes.rb', line 59917

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)


59923
59924
59925
# File 'lib/google/apis/compute_v1/classes.rb', line 59923

def description
  @description
end

#exapool_provisioned_capacity_gbGoogle::Apis::ComputeV1::StoragePoolExapoolProvisionedCapacityGb

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



59928
59929
59930
# File 'lib/google/apis/compute_v1/classes.rb', line 59928

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)


59935
59936
59937
# File 'lib/google/apis/compute_v1/classes.rb', line 59935

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)


59941
59942
59943
# File 'lib/google/apis/compute_v1/classes.rb', line 59941

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)


59954
59955
59956
# File 'lib/google/apis/compute_v1/classes.rb', line 59954

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>)


59960
59961
59962
# File 'lib/google/apis/compute_v1/classes.rb', line 59960

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)


59971
59972
59973
# File 'lib/google/apis/compute_v1/classes.rb', line 59971

def name
  @name
end

#paramsGoogle::Apis::ComputeV1::StoragePoolParams

Additional storage pool params. Corresponds to the JSON property params



59976
59977
59978
# File 'lib/google/apis/compute_v1/classes.rb', line 59976

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)


59982
59983
59984
# File 'lib/google/apis/compute_v1/classes.rb', line 59982

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)


59988
59989
59990
# File 'lib/google/apis/compute_v1/classes.rb', line 59988

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)


59994
59995
59996
# File 'lib/google/apis/compute_v1/classes.rb', line 59994

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)


60000
60001
60002
# File 'lib/google/apis/compute_v1/classes.rb', line 60000

def pool_provisioned_throughput
  @pool_provisioned_throughput
end

#resource_statusGoogle::Apis::ComputeV1::StoragePoolResourceStatus

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



60005
60006
60007
# File 'lib/google/apis/compute_v1/classes.rb', line 60005

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)


60011
60012
60013
# File 'lib/google/apis/compute_v1/classes.rb', line 60011

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)


60016
60017
60018
# File 'lib/google/apis/compute_v1/classes.rb', line 60016

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)


60028
60029
60030
# File 'lib/google/apis/compute_v1/classes.rb', line 60028

def state
  @state
end

#statusGoogle::Apis::ComputeV1::StoragePoolResourceStatus

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



60033
60034
60035
# File 'lib/google/apis/compute_v1/classes.rb', line 60033

def status
  @status
end

#storage_pool_typeString

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

Returns:

  • (String)


60038
60039
60040
# File 'lib/google/apis/compute_v1/classes.rb', line 60038

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)


60045
60046
60047
# File 'lib/google/apis/compute_v1/classes.rb', line 60045

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



60052
60053
60054
60055
60056
60057
60058
60059
60060
60061
60062
60063
60064
60065
60066
60067
60068
60069
60070
60071
60072
60073
60074
# File 'lib/google/apis/compute_v1/classes.rb', line 60052

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