module SleepingKingStudios::Tasks::Apps
Thor tasks for semi-distributed applications.
Public Class Methods
configuration()
click to toggle source
rubocop:disable Metrics/MethodLength
# File lib/sleeping_king_studios/tasks/apps.rb, line 14 def self.configuration @configuration ||= begin tools = SleepingKingStudios::Tools::Toolbelt.instance apps = load_configuration hsh = Hash.new do |_, key| SleepingKingStudios::Tasks::Apps::AppConfiguration. new(:name => key.to_s) end # hash apps.each do |key, data| name = key.to_s data = tools.hsh.convert_keys_to_symbols(data) data[:name] ||= name hsh[key] = SleepingKingStudios::Tasks::Apps::AppConfiguration.new(data) end # each hsh end # begin-end end
Private Class Methods
load_configuration()
click to toggle source
rubocop:enable Metrics/MethodLength
# File lib/sleeping_king_studios/tasks/apps.rb, line 39 def self.load_configuration config_file = SleepingKingStudios::Tasks.configuration.apps.config_file raw = ::File.read(config_file) YAML.safe_load raw rescue {} end