Sha256: 32acfdb989a6522b618a8d551f0855dc2fc12867382964137d537ac2bf00b0ba
Contents?: true
Size: 1.24 KB
Versions: 4
Compression:
Stored size: 1.24 KB
Contents
module Frizz class Configuration YAML_FILENAME = "frizz.yml" attr_accessor :access_key_id, :secret_access_key, :environments, :current_environment def initialize self.environments = {} # Attempt to load defaults from ENV self.access_key_id = ENV["AWS_ACCESS_KEY_ID"] self.secret_access_key = ENV["AWS_SECRET_ACCESS_KEY"] self.current_environment = ENV["FRIZZ_ENV"] || "development" # Allow to be overridden in yaml if yaml_exists? load_yaml! start_yaml_listener end end def environment environments[current_environment] end def environments=(environments_data) @environments = environments_data.each_with_object({}) do |(name, data), obj| obj[name] = Environment.new(name, data) end end private def yaml_exists? File.exists?(YAML_FILENAME) end def load_yaml! YAML.load_file(YAML_FILENAME).each do |key, value| send "#{key}=", value end end def start_yaml_listener require "listen" listener = Listen.to Dir.pwd listener.change do |modified, added, removed| load_yaml! if modified.include? "frizz.yml" end listener.start end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
frizz-1.4.3 | lib/frizz/configuration.rb |
frizz-1.3.3 | lib/frizz/configuration.rb |
frizz-1.3.2 | lib/frizz/configuration.rb |
frizz-1.2.2 | lib/frizz/configuration.rb |