Module: WatchmonkeyCli::Application::Configuration::AppHelper
- Included in:
- WatchmonkeyCli::Application
- Defined in:
- lib/watchmonkey_cli/application/configuration.rb
Instance Method Summary collapse
- #checker_directory ⇒ Object
- #checker_files ⇒ Object
- #config_directory ⇒ Object
- #config_filename(name = "default") ⇒ Object
- #config_files ⇒ Object
- #generate_config(name = "default") ⇒ Object
- #load_appconfig ⇒ Object
- #load_checkers! ⇒ Object
- #load_configs! ⇒ Object
- #wm_cfg_configfile ⇒ Object
- #wm_cfg_path ⇒ Object
Instance Method Details
#checker_directory ⇒ Object
13 14 15 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 13 def checker_directory "#{wm_cfg_path}/checkers" end |
#checker_files ⇒ Object
31 32 33 34 35 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 31 def checker_files Dir["#{checker_directory}/**/*.rb"].reject do |file| file.gsub(config_directory, "").split("/").any?{|fp| fp.start_with?("__") } end.sort end |
#config_directory ⇒ Object
9 10 11 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 9 def config_directory "#{wm_cfg_path}/configs" end |
#config_filename(name = "default") ⇒ Object
21 22 23 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 21 def config_filename name = "default" "#{config_directory}/#{name}.rb" end |
#config_files ⇒ Object
25 26 27 28 29 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 25 def config_files Dir["#{config_directory}/**/*.rb"].reject do |file| file.gsub(config_directory, "").split("/").any?{|fp| fp.start_with?("__") } end.sort end |
#generate_config(name = "default") ⇒ Object
54 55 56 57 58 59 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 54 def generate_config name = "default" FileUtils.mkdir_p(config_directory) File.open(config_filename(name), "w", encoding: "utf-8") do |f| f << File.read("#{File.dirname(__FILE__)}/configuration.tpl", encoding: "utf-8") end end |
#load_appconfig ⇒ Object
49 50 51 52 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 49 def load_appconfig return unless File.exist?(wm_cfg_configfile) eval File.read(wm_cfg_configfile, encoding: "utf-8"), binding, wm_cfg_configfile end |
#load_checkers! ⇒ Object
43 44 45 46 47 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 43 def load_checkers! checkers = checker_files debug "Loading #{checkers.length} checker files from `#{checker_directory}'" checkers.each {|f| require f } end |
#load_configs! ⇒ Object
37 38 39 40 41 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 37 def load_configs! configs = config_files debug "Loading #{configs.length} config files from `#{config_directory}'" configs.each {|f| Configuration.new(self, f) } end |
#wm_cfg_configfile ⇒ Object
17 18 19 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 17 def wm_cfg_configfile "#{wm_cfg_path}/config.rb" end |
#wm_cfg_path ⇒ Object
5 6 7 |
# File 'lib/watchmonkey_cli/application/configuration.rb', line 5 def wm_cfg_path ENV["WM_CFGDIR"].presence || File.("~/.watchmonkey") end |