module Genesis::Framework::Utils
Public Class Methods
collins()
click to toggle source
# File lib/genesisframework/utils.rb, line 27 def self.collins if @@collins_conn.nil? cfg = { :host => self.config_cache['collins']['host'], :username => self.config_cache['collins']['username'], :password => self.config_cache['collins']['password'] } @@collins_conn = ::Collins::Client.new(cfg) end @@collins_conn end
config_cache()
click to toggle source
mimicking rail's cattr_accessor
# File lib/genesisframework/utils.rb, line 19 def self.config_cache @@config_cache end
config_cache=(obj)
click to toggle source
# File lib/genesisframework/utils.rb, line 23 def self.config_cache= (obj) @@config_cache = obj end
facter()
click to toggle source
# File lib/genesisframework/utils.rb, line 36 def self.facter if config_cache.fetch(:facter_cache, true) Facter.to_hash else if @@facter.nil? @@facter = Facter.to_hash end @@facter end end
log(subsystem, message)
click to toggle source
# File lib/genesisframework/utils.rb, line 48 def self.log subsystem, message logline = subsystem.to_s + " :: " + message puts logline # Load external logging modules and send log to them if @@loggers.nil? @@loggers = self.config_cache[:loggers].map {|logger| begin require "logging/#{logger.downcase}" Logging.const_get(logger.to_sym) rescue LoadError puts "Could not load logger #{logger}" end }.compact end @@loggers.each {|logger| logger.log logline} end
tmp_path(filename, sandbox = "")
click to toggle source
# File lib/genesisframework/utils.rb, line 7 def self.tmp_path filename, sandbox = "" location = File.join(ENV['GENESIS_ROOT'], "tmp", sandbox) Dir.mkdir(location, 0755) unless File.directory? location File.join(location, filename) end