Class: Google::Apis::BaremetalsolutionV2::Volume

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/baremetalsolution_v2/classes.rb,
lib/google/apis/baremetalsolution_v2/representations.rb,
lib/google/apis/baremetalsolution_v2/representations.rb

Overview

A storage volume.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Volume

Returns a new instance of Volume.



2436
2437
2438
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2436

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#attachedBoolean Also known as: attached?

Output only. Is the Volume attached at at least one instance. This field is a lightweight counterpart of instances field. It is filled in List responses as well. Corresponds to the JSON property attached

Returns:

  • (Boolean)


2293
2294
2295
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2293

def attached
  @attached
end

#auto_grown_size_gibFixnum

The size, in GiB, that this storage volume has expanded as a result of an auto grow policy. In the absence of auto-grow, the value is 0. Corresponds to the JSON property autoGrownSizeGib

Returns:

  • (Fixnum)


2300
2301
2302
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2300

def auto_grown_size_gib
  @auto_grown_size_gib
end

#boot_volumeBoolean Also known as: boot_volume?

Output only. Whether this volume is a boot volume. A boot volume is one which contains a boot LUN. Corresponds to the JSON property bootVolume

Returns:

  • (Boolean)


2306
2307
2308
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2306

def boot_volume
  @boot_volume
end

#current_size_gibFixnum

The current size of this storage volume, in GiB, including space reserved for snapshots. This size might be different than the requested size if the storage volume has been configured with auto grow or auto shrink. Corresponds to the JSON property currentSizeGib

Returns:

  • (Fixnum)


2314
2315
2316
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2314

def current_size_gib
  @current_size_gib
end

#emergency_size_gibFixnum

Additional emergency size that was requested for this Volume, in GiB. current_size_gib includes this value. Corresponds to the JSON property emergencySizeGib

Returns:

  • (Fixnum)


2320
2321
2322
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2320

def emergency_size_gib
  @emergency_size_gib
end

#expire_timeString

Output only. Time after which volume will be fully deleted. It is filled only for volumes in COOLOFF state. Corresponds to the JSON property expireTime

Returns:

  • (String)


2326
2327
2328
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2326

def expire_time
  @expire_time
end

#idString

An identifier for the Volume, generated by the backend. Corresponds to the JSON property id

Returns:

  • (String)


2331
2332
2333
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2331

def id
  @id
end

#instancesArray<String>

Output only. Instances this Volume is attached to. This field is set only in Get requests. Corresponds to the JSON property instances

Returns:

  • (Array<String>)


2337
2338
2339
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2337

def instances
  @instances
end

#labelsHash<String,String>

Labels as key value pairs. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


2342
2343
2344
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2342

def labels
  @labels
end

#max_size_gibFixnum

Maximum size volume can be expanded to in case of evergency, in GiB. Corresponds to the JSON property maxSizeGib

Returns:

  • (Fixnum)


2347
2348
2349
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2347

def max_size_gib
  @max_size_gib
end

#nameString

Output only. The resource name of this Volume. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/design/ resource_names. Format: projects/project/locations/location/volumes/ volume` Corresponds to the JSON propertyname`

Returns:

  • (String)


2355
2356
2357
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2355

def name
  @name
end

#notesString

Input only. User-specified notes for new Volume. Used to provision Volumes that require manual intervention. Corresponds to the JSON property notes

Returns:

  • (String)


2361
2362
2363
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2361

def notes
  @notes
end

#originally_requested_size_gibFixnum

Originally requested size, in GiB. Corresponds to the JSON property originallyRequestedSizeGib

Returns:

  • (Fixnum)


2366
2367
2368
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2366

def originally_requested_size_gib
  @originally_requested_size_gib
end

#performance_tierString

Immutable. Performance tier of the Volume. Default is SHARED. Corresponds to the JSON property performanceTier

Returns:

  • (String)


2371
2372
2373
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2371

def performance_tier
  @performance_tier
end

#podString

Immutable. Pod name. Corresponds to the JSON property pod

Returns:

  • (String)


2376
2377
2378
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2376

def pod
  @pod
end

#protocolString

Output only. Storage protocol for the Volume. Corresponds to the JSON property protocol

Returns:

  • (String)


2381
2382
2383
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2381

def protocol
  @protocol
end

#remaining_space_gibFixnum

The space remaining in the storage volume for new LUNs, in GiB, excluding space reserved for snapshots. Corresponds to the JSON property remainingSpaceGib

Returns:

  • (Fixnum)


2387
2388
2389
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2387

def remaining_space_gib
  @remaining_space_gib
end

#requested_size_gibFixnum

The requested size of this storage volume, in GiB. Corresponds to the JSON property requestedSizeGib

Returns:

  • (Fixnum)


2392
2393
2394
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2392

def requested_size_gib
  @requested_size_gib
end

#snapshot_auto_delete_behaviorString

The behavior to use when snapshot reserved space is full. Corresponds to the JSON property snapshotAutoDeleteBehavior

Returns:

  • (String)


2397
2398
2399
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2397

def snapshot_auto_delete_behavior
  @snapshot_auto_delete_behavior
end

#snapshot_enabledBoolean Also known as: snapshot_enabled?

Whether snapshots are enabled. Corresponds to the JSON property snapshotEnabled

Returns:

  • (Boolean)


2402
2403
2404
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2402

def snapshot_enabled
  @snapshot_enabled
end

#snapshot_reservation_detailGoogle::Apis::BaremetalsolutionV2::SnapshotReservationDetail

Details about snapshot space reservation and usage on the storage volume. Corresponds to the JSON property snapshotReservationDetail



2408
2409
2410
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2408

def snapshot_reservation_detail
  @snapshot_reservation_detail
end

#snapshot_schedule_policyString

The name of the snapshot schedule policy in use for this volume, if any. Corresponds to the JSON property snapshotSchedulePolicy

Returns:

  • (String)


2413
2414
2415
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2413

def snapshot_schedule_policy
  @snapshot_schedule_policy
end

#stateString

The state of this storage volume. Corresponds to the JSON property state

Returns:

  • (String)


2418
2419
2420
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2418

def state
  @state
end

#storage_aggregate_poolString

Input only. Name of the storage aggregate pool to allocate the volume in. Can be used only for VOLUME_PERFORMANCE_TIER_ASSIGNED volumes. Corresponds to the JSON property storageAggregatePool

Returns:

  • (String)


2424
2425
2426
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2424

def storage_aggregate_pool
  @storage_aggregate_pool
end

#storage_typeString

The storage type for this volume. Corresponds to the JSON property storageType

Returns:

  • (String)


2429
2430
2431
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2429

def storage_type
  @storage_type
end

#workload_profileString

The workload profile for the volume. Corresponds to the JSON property workloadProfile

Returns:

  • (String)


2434
2435
2436
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2434

def workload_profile
  @workload_profile
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2441

def update!(**args)
  @attached = args[:attached] if args.key?(:attached)
  @auto_grown_size_gib = args[:auto_grown_size_gib] if args.key?(:auto_grown_size_gib)
  @boot_volume = args[:boot_volume] if args.key?(:boot_volume)
  @current_size_gib = args[:current_size_gib] if args.key?(:current_size_gib)
  @emergency_size_gib = args[:emergency_size_gib] if args.key?(:emergency_size_gib)
  @expire_time = args[:expire_time] if args.key?(:expire_time)
  @id = args[:id] if args.key?(:id)
  @instances = args[:instances] if args.key?(:instances)
  @labels = args[:labels] if args.key?(:labels)
  @max_size_gib = args[:max_size_gib] if args.key?(:max_size_gib)
  @name = args[:name] if args.key?(:name)
  @notes = args[:notes] if args.key?(:notes)
  @originally_requested_size_gib = args[:originally_requested_size_gib] if args.key?(:originally_requested_size_gib)
  @performance_tier = args[:performance_tier] if args.key?(:performance_tier)
  @pod = args[:pod] if args.key?(:pod)
  @protocol = args[:protocol] if args.key?(:protocol)
  @remaining_space_gib = args[:remaining_space_gib] if args.key?(:remaining_space_gib)
  @requested_size_gib = args[:requested_size_gib] if args.key?(:requested_size_gib)
  @snapshot_auto_delete_behavior = args[:snapshot_auto_delete_behavior] if args.key?(:snapshot_auto_delete_behavior)
  @snapshot_enabled = args[:snapshot_enabled] if args.key?(:snapshot_enabled)
  @snapshot_reservation_detail = args[:snapshot_reservation_detail] if args.key?(:snapshot_reservation_detail)
  @snapshot_schedule_policy = args[:snapshot_schedule_policy] if args.key?(:snapshot_schedule_policy)
  @state = args[:state] if args.key?(:state)
  @storage_aggregate_pool = args[:storage_aggregate_pool] if args.key?(:storage_aggregate_pool)
  @storage_type = args[:storage_type] if args.key?(:storage_type)
  @workload_profile = args[:workload_profile] if args.key?(:workload_profile)
end