Class: PackerFiles::Core::VolumeGroup
- Defined in:
- lib/PackerFiles/Core/VolumeGroup.rb
Overview
Volume Group abstracts out LVM.
Instance Attribute Summary collapse
-
#disk_names ⇒ Object
Returns the value of attribute disk_names.
-
#lvs ⇒ Object
Returns the value of attribute lvs.
-
#name ⇒ Object
Specify attributes.
Instance Method Summary collapse
-
#initialize {|_self| ... } ⇒ VolumeGroup
constructor
Constructor to just specify accessor varibales.
-
#LogicalVolume(&block) ⇒ Object
Adds a Logical volume on this disk by doing an instance-eval.
-
#normalize ⇒ Object
Normalize the various values into something useful.
Methods inherited from Base
Constructor Details
#initialize {|_self| ... } ⇒ VolumeGroup
Constructor to just specify accessor varibales
19 20 21 22 23 |
# File 'lib/PackerFiles/Core/VolumeGroup.rb', line 19 def initialize @disk_names = [] @lvs = [] yield self if block_given? end |
Instance Attribute Details
#disk_names ⇒ Object
Returns the value of attribute disk_names.
15 16 17 |
# File 'lib/PackerFiles/Core/VolumeGroup.rb', line 15 def disk_names @disk_names end |
#lvs ⇒ Object
Returns the value of attribute lvs.
16 17 18 |
# File 'lib/PackerFiles/Core/VolumeGroup.rb', line 16 def lvs @lvs end |
#name ⇒ Object
Specify attributes
14 15 16 |
# File 'lib/PackerFiles/Core/VolumeGroup.rb', line 14 def name @name end |
Instance Method Details
#LogicalVolume(&block) ⇒ Object
Adds a Logical volume on this disk by doing an instance-eval
26 27 28 29 30 31 32 33 |
# File 'lib/PackerFiles/Core/VolumeGroup.rb', line 26 def LogicalVolume(&block) if block_given? lv = LogicalVolume.new lv.instance_eval &block lv.name = 'lv' + @lvs.size.to_s if (lv.name.nil?) @lvs.push(lv) end end |
#normalize ⇒ Object
Normalize the various values into something useful
36 37 38 39 40 41 42 43 44 |
# File 'lib/PackerFiles/Core/VolumeGroup.rb', line 36 def normalize raise 'name is nil' if @name.nil? raise 'Disk names is empty' if @disk_names.empty? raise 'LVs is empty' if @lvs.empty? @lvs.each {|lv| lv.vg_name= @name lv.normalize } end |