Class: PuppetModule
- Inherits:
-
Object
- Object
- PuppetModule
- Defined in:
- lib/kafo/puppet_module.rb
Instance Attribute Summary collapse
-
#class_name ⇒ Object
readonly
Returns the value of attribute class_name.
-
#dir_name ⇒ Object
readonly
Returns the value of attribute dir_name.
-
#manifest_name ⇒ Object
readonly
Returns the value of attribute manifest_name.
-
#manifest_path ⇒ Object
readonly
Returns the value of attribute manifest_path.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#params ⇒ Object
readonly
Returns the value of attribute params.
Instance Method Summary collapse
- #disable ⇒ Object
- #enable ⇒ Object
- #enabled? ⇒ Boolean
-
#initialize(name, parser = PuppetModuleParser) ⇒ PuppetModule
constructor
A new instance of PuppetModule.
- #params_hash ⇒ Object
- #parse(builder_klass = ParamBuilder) ⇒ Object
- #validations(param = nil) ⇒ Object
Constructor Details
#initialize(name, parser = PuppetModuleParser) ⇒ PuppetModule
Returns a new instance of PuppetModule.
10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/kafo/puppet_module.rb', line 10 def initialize(name, parser = PuppetModuleParser) @name = name @dir_name = get_dir_name @manifest_name = get_manifest_name @class_name = get_class_name @params = [] @manifest_path = File.join(KafoConfigure.root_dir, '/modules/', module_manifest_path) @parser = parser @validations = [] @logger = Logging.logger.root end |
Instance Attribute Details
#class_name ⇒ Object (readonly)
Returns the value of attribute class_name.
8 9 10 |
# File 'lib/kafo/puppet_module.rb', line 8 def class_name @class_name end |
#dir_name ⇒ Object (readonly)
Returns the value of attribute dir_name.
8 9 10 |
# File 'lib/kafo/puppet_module.rb', line 8 def dir_name @dir_name end |
#manifest_name ⇒ Object (readonly)
Returns the value of attribute manifest_name.
8 9 10 |
# File 'lib/kafo/puppet_module.rb', line 8 def manifest_name @manifest_name end |
#manifest_path ⇒ Object (readonly)
Returns the value of attribute manifest_path.
8 9 10 |
# File 'lib/kafo/puppet_module.rb', line 8 def manifest_path @manifest_path end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
8 9 10 |
# File 'lib/kafo/puppet_module.rb', line 8 def name @name end |
#params ⇒ Object (readonly)
Returns the value of attribute params.
8 9 10 |
# File 'lib/kafo/puppet_module.rb', line 8 def params @params end |
Instance Method Details
#disable ⇒ Object
26 27 28 |
# File 'lib/kafo/puppet_module.rb', line 26 def disable @enabled = false end |
#enable ⇒ Object
30 31 32 |
# File 'lib/kafo/puppet_module.rb', line 30 def enable @enabled = true end |
#enabled? ⇒ Boolean
22 23 24 |
# File 'lib/kafo/puppet_module.rb', line 22 def enabled? @enabled.nil? ? @enabled = KafoConfigure.config.module_enabled?(self) : @enabled end |
#params_hash ⇒ Object
60 61 62 |
# File 'lib/kafo/puppet_module.rb', line 60 def params_hash Hash[params.map { |param| [param.name, param.value] }] end |
#parse(builder_klass = ParamBuilder) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/kafo/puppet_module.rb', line 34 def parse(builder_klass = ParamBuilder) @params = [] raw_data = @parser.parse(manifest_path) builder = builder_klass.new(self, raw_data) @validations = raw_data['validations'] builder.validate @params = builder.build_params self rescue ConfigurationException => e puts "Unable to continue because of:" puts e. KafoConfigure.exit(:manifest_error) end |
#validations(param = nil) ⇒ Object
50 51 52 53 54 55 56 57 58 |
# File 'lib/kafo/puppet_module.rb', line 50 def validations(param = nil) if param.nil? @validations else @validations.select do |validation| validation.arguments.map(&:to_s).include?("$#{param.name}") end end end |