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.



41962
41963
41964
# File 'lib/google/apis/compute_v1/classes.rb', line 41962

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)


41846
41847
41848
# File 'lib/google/apis/compute_v1/classes.rb', line 41846

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)


41851
41852
41853
# File 'lib/google/apis/compute_v1/classes.rb', line 41851

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)


41857
41858
41859
# File 'lib/google/apis/compute_v1/classes.rb', line 41857

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)


41863
41864
41865
# File 'lib/google/apis/compute_v1/classes.rb', line 41863

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)


41869
41870
41871
# File 'lib/google/apis/compute_v1/classes.rb', line 41869

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)


41881
41882
41883
# File 'lib/google/apis/compute_v1/classes.rb', line 41881

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


41887
41888
41889
# File 'lib/google/apis/compute_v1/classes.rb', line 41887

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)


41897
41898
41899
# File 'lib/google/apis/compute_v1/classes.rb', line 41897

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)


41903
41904
41905
# File 'lib/google/apis/compute_v1/classes.rb', line 41903

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)


41909
41910
41911
# File 'lib/google/apis/compute_v1/classes.rb', line 41909

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)


41915
41916
41917
# File 'lib/google/apis/compute_v1/classes.rb', line 41915

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)


41921
41922
41923
# File 'lib/google/apis/compute_v1/classes.rb', line 41921

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



41926
41927
41928
# File 'lib/google/apis/compute_v1/classes.rb', line 41926

def resource_status
  @resource_status
end

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

Returns:

  • (String)


41931
41932
41933
# File 'lib/google/apis/compute_v1/classes.rb', line 41931

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)


41936
41937
41938
# File 'lib/google/apis/compute_v1/classes.rb', line 41936

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)


41943
41944
41945
# File 'lib/google/apis/compute_v1/classes.rb', line 41943

def state
  @state
end

#statusGoogle::Apis::ComputeV1::StoragePoolResourceStatus

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



41948
41949
41950
# File 'lib/google/apis/compute_v1/classes.rb', line 41948

def status
  @status
end

#storage_pool_typeString

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

Returns:

  • (String)


41953
41954
41955
# File 'lib/google/apis/compute_v1/classes.rb', line 41953

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)


41960
41961
41962
# File 'lib/google/apis/compute_v1/classes.rb', line 41960

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



41967
41968
41969
41970
41971
41972
41973
41974
41975
41976
41977
41978
41979
41980
41981
41982
41983
41984
41985
41986
41987
# File 'lib/google/apis/compute_v1/classes.rb', line 41967

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