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.



2046
2047
2048
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2046

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

Instance Attribute Details

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


1951
1952
1953
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1951

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


1958
1959
1960
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1958

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)


1964
1965
1966
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1964

def emergency_size_gib
  @emergency_size_gib
end

#idString

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

Returns:

  • (String)


1969
1970
1971
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1969

def id
  @id
end

#labelsHash<String,String>

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

Returns:

  • (Hash<String,String>)


1974
1975
1976
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1974

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)


1979
1980
1981
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1979

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)


1987
1988
1989
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1987

def name
  @name
end

#originally_requested_size_gibFixnum

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

Returns:

  • (Fixnum)


1992
1993
1994
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1992

def originally_requested_size_gib
  @originally_requested_size_gib
end

#podString

Immutable. Pod name. Corresponds to the JSON property pod

Returns:

  • (String)


1997
1998
1999
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1997

def pod
  @pod
end

#protocolString

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

Returns:

  • (String)


2002
2003
2004
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2002

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)


2008
2009
2010
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2008

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)


2013
2014
2015
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2013

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)


2018
2019
2020
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2018

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)


2023
2024
2025
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2023

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



2029
2030
2031
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2029

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)


2034
2035
2036
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2034

def snapshot_schedule_policy
  @snapshot_schedule_policy
end

#stateString

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

Returns:

  • (String)


2039
2040
2041
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2039

def state
  @state
end

#storage_typeString

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

Returns:

  • (String)


2044
2045
2046
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2044

def storage_type
  @storage_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 2051

def update!(**args)
  @auto_grown_size_gib = args[:auto_grown_size_gib] if args.key?(:auto_grown_size_gib)
  @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)
  @id = args[:id] if args.key?(:id)
  @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)
  @originally_requested_size_gib = args[:originally_requested_size_gib] if args.key?(:originally_requested_size_gib)
  @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_type = args[:storage_type] if args.key?(:storage_type)
end