Sha256: 09e03df0ac2377b5711a5fa5429c6270a041f16832f50544d36c6c3de08d8357
Contents?: true
Size: 1.63 KB
Versions: 3
Compression:
Stored size: 1.63 KB
Contents
module Rivet module Utils def self.die(level = 'fatal',message) Rivet::Log.write(level,message) exit end # This returns the merged definition given a group def self.get_definition(group,directory) defaults = consume_defaults(directory) group_def = load_definition(group,directory) if defaults && group_def group_def = defaults.deep_merge(group_def) end group_def ? group_def : false end # Gobbles up the defaults file from YML, returns the hash or false if empty def self.consume_defaults(autoscale_dir) defaults_file = File.join(autoscale_dir,"defaults.yml") if File.exists?(defaults_file) parsed = begin Rivet::Log.debug("Consuming defaults from #{defaults_file}") YAML.load(File.open(defaults_file)) rescue ArgumentError => e Rivet::Log.fatal("Could not parse YAML from #{defaults_file}: #{e.message}") end parsed else false end end # This loads the given definition from it's YML file, returns the hash or # false if empty def self.load_definition(name,directory) definition_dir = File.join(directory,name) conf_file = File.join(definition_dir,"conf.yml") if Dir.exists?(definition_dir) && File.exists?(conf_file) Rivet::Log.debug("Loading definition for #{name} from #{conf_file}") parsed = begin YAML.load(File.open(conf_file)) rescue Rivet::Log.fatal("Could not parse YAML from #{conf_file}: #{e.message}") end parsed ? parsed : { } else false end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rivet-1.3.0 | lib/rivet/utils.rb |
rivet-1.2.0 | lib/rivet/utils.rb |
rivet-1.1.0 | lib/rivet/utils.rb |