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.



2631
2632
2633
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2631

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)


2498
2499
2500
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2498

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)


2505
2506
2507
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2505

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)


2511
2512
2513
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2511

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)


2519
2520
2521
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2519

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)


2525
2526
2527
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2525

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)


2531
2532
2533
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2531

def expire_time
  @expire_time
end

#idString

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

Returns:

  • (String)


2536
2537
2538
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2536

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


2542
2543
2544
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2542

def instances
  @instances
end

#labelsHash<String,String>

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

Returns:

  • (Hash<String,String>)


2547
2548
2549
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2547

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)


2552
2553
2554
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2552

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)


2560
2561
2562
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2560

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)


2566
2567
2568
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2566

def notes
  @notes
end

#originally_requested_size_gibFixnum

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

Returns:

  • (Fixnum)


2571
2572
2573
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2571

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)


2576
2577
2578
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2576

def performance_tier
  @performance_tier
end

#podString

Immutable. Pod name. Pod is an independent part of infrastructure. Volume can only be connected to the instances allocated in the same pod. Corresponds to the JSON property pod

Returns:

  • (String)


2582
2583
2584
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2582

def pod
  @pod
end

#protocolString

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

Returns:

  • (String)


2587
2588
2589
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2587

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)


2593
2594
2595
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2593

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)


2598
2599
2600
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2598

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)


2603
2604
2605
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2603

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)


2608
2609
2610
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2608

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



2614
2615
2616
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2614

def snapshot_reservation_detail
  @snapshot_reservation_detail
end

#stateString

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

Returns:

  • (String)


2619
2620
2621
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2619

def state
  @state
end

#storage_typeString

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

Returns:

  • (String)


2624
2625
2626
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2624

def storage_type
  @storage_type
end

#workload_profileString

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

Returns:

  • (String)


2629
2630
2631
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2629

def workload_profile
  @workload_profile
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2636

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)
  @state = args[:state] if args.key?(:state)
  @storage_type = args[:storage_type] if args.key?(:storage_type)
  @workload_profile = args[:workload_profile] if args.key?(:workload_profile)
end