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.



42134
42135
42136
# File 'lib/google/apis/compute_v1/classes.rb', line 42134

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)


42018
42019
42020
# File 'lib/google/apis/compute_v1/classes.rb', line 42018

def capacity_provisioning_type
  @capacity_provisioning_type
end

#creation_timestampString

[Output Only] Creation timestamp in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


42023
42024
42025
# File 'lib/google/apis/compute_v1/classes.rb', line 42023

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)


42029
42030
42031
# File 'lib/google/apis/compute_v1/classes.rb', line 42029

def description
  @description
end

#idFixnum

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

Returns:

  • (Fixnum)


42035
42036
42037
# File 'lib/google/apis/compute_v1/classes.rb', line 42035

def id
  @id
end

#kindString

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

Returns:

  • (String)


42041
42042
42043
# File 'lib/google/apis/compute_v1/classes.rb', line 42041

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


42053
42054
42055
# File 'lib/google/apis/compute_v1/classes.rb', line 42053

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


42059
42060
42061
# File 'lib/google/apis/compute_v1/classes.rb', line 42059

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 with RFC1035. 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)


42069
42070
42071
# File 'lib/google/apis/compute_v1/classes.rb', line 42069

def name
  @name
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)


42075
42076
42077
# File 'lib/google/apis/compute_v1/classes.rb', line 42075

def performance_provisioning_type
  @performance_provisioning_type
end

#pool_provisioned_capacity_gbFixnum

Size, in GiB, of the storage pool. 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)


42081
42082
42083
# File 'lib/google/apis/compute_v1/classes.rb', line 42081

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)


42087
42088
42089
# File 'lib/google/apis/compute_v1/classes.rb', line 42087

def pool_provisioned_iops
  @pool_provisioned_iops
end

#pool_provisioned_throughputFixnum

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

Returns:

  • (Fixnum)


42093
42094
42095
# File 'lib/google/apis/compute_v1/classes.rb', line 42093

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



42098
42099
42100
# File 'lib/google/apis/compute_v1/classes.rb', line 42098

def resource_status
  @resource_status
end

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

Returns:

  • (String)


42103
42104
42105
# File 'lib/google/apis/compute_v1/classes.rb', line 42103

def self_link
  @self_link
end

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

Returns:

  • (String)


42108
42109
42110
# File 'lib/google/apis/compute_v1/classes.rb', line 42108

def self_link_with_id
  @self_link_with_id
end

#stateString

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


42115
42116
42117
# File 'lib/google/apis/compute_v1/classes.rb', line 42115

def state
  @state
end

#statusGoogle::Apis::ComputeV1::StoragePoolResourceStatus

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



42120
42121
42122
# File 'lib/google/apis/compute_v1/classes.rb', line 42120

def status
  @status
end

#storage_pool_typeString

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

Returns:

  • (String)


42125
42126
42127
# File 'lib/google/apis/compute_v1/classes.rb', line 42125

def storage_pool_type
  @storage_pool_type
end

#zoneString

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


42132
42133
42134
# File 'lib/google/apis/compute_v1/classes.rb', line 42132

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



42139
42140
42141
42142
42143
42144
42145
42146
42147
42148
42149
42150
42151
42152
42153
42154
42155
42156
42157
42158
42159
# File 'lib/google/apis/compute_v1/classes.rb', line 42139

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