Module: Rivet::Utils
- Defined in:
- lib/rivet/utils.rb
Constant Summary collapse
- AUTOSCALE_DIR =
"autoscale"
Class Method Summary collapse
-
.consume_defaults(autoscale_dir = AUTOSCALE_DIR) ⇒ Object
Gobbles up the defaults file from YML, returns the hash or false if empty.
- .die(level = 'fatal', message) ⇒ Object
- .ensure_minimum_setup ⇒ Object
-
.get_definition(group) ⇒ Object
This returns the merged definition given a group.
-
.load_definition(name) ⇒ Object
This loads the given definition from it’s YML file, returns the hash or false if empty.
Class Method Details
.consume_defaults(autoscale_dir = AUTOSCALE_DIR) ⇒ Object
Gobbles up the defaults file from YML, returns the hash or false if empty
32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/rivet/utils.rb', line 32 def self.consume_defaults(autoscale_dir = 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 |
.die(level = 'fatal', message) ⇒ Object
5 6 7 8 |
# File 'lib/rivet/utils.rb', line 5 def self.die(level = 'fatal',) Rivet::Log.write(level,) exit end |
.ensure_minimum_setup ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'lib/rivet/utils.rb', line 10 def self.ensure_minimum_setup if Dir.exists?(AUTOSCALE_DIR) true else Rivet::Log.info("Creating #{AUTOSCALE_DIR}") Dir.mkdir(AUTOSCALE_DIR) end end |
.get_definition(group) ⇒ Object
This returns the merged definition given a group
21 22 23 24 25 26 27 28 |
# File 'lib/rivet/utils.rb', line 21 def self.get_definition(group) defaults = consume_defaults group_def = load_definition(group) if defaults && group_def group_def = defaults.deep_merge(group_def) end group_def ? group_def : false end |
.load_definition(name) ⇒ Object
This loads the given definition from it’s YML file, returns the hash or false if empty
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/rivet/utils.rb', line 50 def self.load_definition(name) definition_dir = File.join(AUTOSCALE_DIR,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 |