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.



60059
60060
60061
# File 'lib/google/apis/compute_v1/classes.rb', line 60059

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)


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

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)


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

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)


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

def description
  @description
end

#exapool_provisioned_capacity_gbGoogle::Apis::ComputeV1::StoragePoolExapoolProvisionedCapacityGb

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



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

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)


59947
59948
59949
# File 'lib/google/apis/compute_v1/classes.rb', line 59947

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)


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

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)


59966
59967
59968
# File 'lib/google/apis/compute_v1/classes.rb', line 59966

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


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

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)


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

def name
  @name
end

#paramsGoogle::Apis::ComputeV1::StoragePoolParams

Additional storage pool params. Corresponds to the JSON property params



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

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)


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

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)


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

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)


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

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)


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

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



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

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)


60023
60024
60025
# File 'lib/google/apis/compute_v1/classes.rb', line 60023

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)


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

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)


60040
60041
60042
# File 'lib/google/apis/compute_v1/classes.rb', line 60040

def state
  @state
end

#statusGoogle::Apis::ComputeV1::StoragePoolResourceStatus

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



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

def status
  @status
end

#storage_pool_typeString

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

Returns:

  • (String)


60050
60051
60052
# File 'lib/google/apis/compute_v1/classes.rb', line 60050

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)


60057
60058
60059
# File 'lib/google/apis/compute_v1/classes.rb', line 60057

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



60064
60065
60066
60067
60068
60069
60070
60071
60072
60073
60074
60075
60076
60077
60078
60079
60080
60081
60082
60083
60084
60085
60086
# File 'lib/google/apis/compute_v1/classes.rb', line 60064

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