Class: Package
- Inherits:
-
Object
- Object
- Package
- Defined in:
- lib/package.rb
Instance Attribute Summary collapse
-
#package ⇒ Object
Returns the value of attribute package.
-
#package_base ⇒ Object
Returns the value of attribute package_base.
-
#package_dir ⇒ Object
Returns the value of attribute package_dir.
-
#package_release_tag ⇒ Object
Returns the value of attribute package_release_tag.
-
#package_yml ⇒ Object
Returns the value of attribute package_yml.
-
#packages_dir ⇒ Object
readonly
Returns the value of attribute packages_dir.
Instance Method Summary collapse
-
#initialize(package = "") ⇒ Package
constructor
A new instance of Package.
- #package_dir? ⇒ Boolean
- #package_valid? ⇒ Boolean
- #package_yml? ⇒ Boolean
- #set_properties(obj) ⇒ Object
- #yml_valid? ⇒ Boolean
Constructor Details
#initialize(package = "") ⇒ Package
Returns a new instance of Package.
8 9 10 11 12 13 14 15 16 |
# File 'lib/package.rb', line 8 def initialize(package="") @package = package @package_base = "" @package_release_tag = "" @package_yml = "" @package_dir = "" @packages_dir = SYSTEM_CONFIG['packages_dir'] end |
Instance Attribute Details
#package ⇒ Object
Returns the value of attribute package.
5 6 7 |
# File 'lib/package.rb', line 5 def package @package end |
#package_base ⇒ Object
Returns the value of attribute package_base.
5 6 7 |
# File 'lib/package.rb', line 5 def package_base @package_base end |
#package_dir ⇒ Object
Returns the value of attribute package_dir.
5 6 7 |
# File 'lib/package.rb', line 5 def package_dir @package_dir end |
#package_release_tag ⇒ Object
Returns the value of attribute package_release_tag.
5 6 7 |
# File 'lib/package.rb', line 5 def package_release_tag @package_release_tag end |
#package_yml ⇒ Object
Returns the value of attribute package_yml.
5 6 7 |
# File 'lib/package.rb', line 5 def package_yml @package_yml end |
#packages_dir ⇒ Object (readonly)
Returns the value of attribute packages_dir.
6 7 8 |
# File 'lib/package.rb', line 6 def packages_dir @packages_dir end |
Instance Method Details
#package_dir? ⇒ Boolean
62 63 64 65 |
# File 'lib/package.rb', line 62 def package_dir? # Package isn't valid unless it has a 'files' directory under it File.directory? "#{@package_dir}/files" end |
#package_valid? ⇒ Boolean
25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/package.rb', line 25 def package_valid? if package_dir? if package_yml? return true else puts "Error: @package_yml: #{@package_yml} isn't valid!" return false end else puts "Error: @package_dir: #{@package_dir} does not exist!" return false end end |
#package_yml? ⇒ Boolean
39 40 41 42 |
# File 'lib/package.rb', line 39 def package_yml? File.exists? @package_yml yml_valid? end |
#set_properties(obj) ⇒ Object
18 19 20 21 22 23 |
# File 'lib/package.rb', line 18 def set_properties(obj) @package_base = obj.host_yml_values['config']['package_base'] @package_release_tag = obj.host_yml_values['config']['release_tag'] @package_dir = "#{@packages_dir}/#{@package_base}/#{package}/#{@package_release_tag}" @package_yml = "#{@package_dir}/package.yml" end |
#yml_valid? ⇒ Boolean
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/package.rb', line 44 def yml_valid? begin package_yml = YAML.load_file(@package_yml) valid_keys = ['rank','include','exclude','exclude_backup','execute'] # Begin check for basic elements package_yml.each_pair do |key,val| unless valid_keys.include? key puts "Invalid option => #{key} detected in #{@package_yml}. Exiting..." return false end end rescue Exception => e puts "Tried to load #{@package_yml} during 'Package.yml_valid?', received exception: #{e}" end end |