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.



41126
41127
41128
# File 'lib/google/apis/compute_v1/classes.rb', line 41126

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)


41010
41011
41012
# File 'lib/google/apis/compute_v1/classes.rb', line 41010

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)


41015
41016
41017
# File 'lib/google/apis/compute_v1/classes.rb', line 41015

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)


41021
41022
41023
# File 'lib/google/apis/compute_v1/classes.rb', line 41021

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)


41027
41028
41029
# File 'lib/google/apis/compute_v1/classes.rb', line 41027

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)


41033
41034
41035
# File 'lib/google/apis/compute_v1/classes.rb', line 41033

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)


41045
41046
41047
# File 'lib/google/apis/compute_v1/classes.rb', line 41045

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


41051
41052
41053
# File 'lib/google/apis/compute_v1/classes.rb', line 41051

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)


41061
41062
41063
# File 'lib/google/apis/compute_v1/classes.rb', line 41061

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)


41067
41068
41069
# File 'lib/google/apis/compute_v1/classes.rb', line 41067

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)


41073
41074
41075
# File 'lib/google/apis/compute_v1/classes.rb', line 41073

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)


41079
41080
41081
# File 'lib/google/apis/compute_v1/classes.rb', line 41079

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)


41085
41086
41087
# File 'lib/google/apis/compute_v1/classes.rb', line 41085

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



41090
41091
41092
# File 'lib/google/apis/compute_v1/classes.rb', line 41090

def resource_status
  @resource_status
end

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

Returns:

  • (String)


41095
41096
41097
# File 'lib/google/apis/compute_v1/classes.rb', line 41095

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)


41100
41101
41102
# File 'lib/google/apis/compute_v1/classes.rb', line 41100

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)


41107
41108
41109
# File 'lib/google/apis/compute_v1/classes.rb', line 41107

def state
  @state
end

#statusGoogle::Apis::ComputeV1::StoragePoolResourceStatus

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



41112
41113
41114
# File 'lib/google/apis/compute_v1/classes.rb', line 41112

def status
  @status
end

#storage_pool_typeString

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

Returns:

  • (String)


41117
41118
41119
# File 'lib/google/apis/compute_v1/classes.rb', line 41117

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)


41124
41125
41126
# File 'lib/google/apis/compute_v1/classes.rb', line 41124

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



41131
41132
41133
41134
41135
41136
41137
41138
41139
41140
41141
41142
41143
41144
41145
41146
41147
41148
41149
41150
41151
# File 'lib/google/apis/compute_v1/classes.rb', line 41131

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