Sha256: d6a7fac30b7bc08b872fb3a5edbf96684c2eff3a59b66f6c247b5287f9a85b59
Contents?: true
Size: 997 Bytes
Versions: 1
Compression:
Stored size: 997 Bytes
Contents
require 'logger' require 'pathname' module Snails class Environment include Comparable def initialize(str); @str = str.to_s.freeze; end def to_s; @str; end def <=>(str); @str <=> str.to_s; end def inspect; @str.inspect; end %w(production staging development test).each do |key| define_method("#{key}?") { @str == key } end alias_method :dev?, :development? alias_method :prod?, :production? alias_method :testing?, :test? end def self.env @env ||= Environment.new(ENV['RACK_ENV'] || ENV['RAILS_ENV'] || 'development') end def self.root @root ||= Pathname.new(Dir.pwd) end def self.apps @apps ||= [] end def self.app puts "Warning: There's more than one Snail app defined!" if @apps.count > 1 @apps.first end def self.logger @logged ||= Logger.new(File.exist?(root.join('log')) ? root.join('log', "#{Snails.env}.log") : nil) end end require 'snails/app' puts "Loaded #{Snails.env} environment."
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
snails-0.2.5 | lib/snails.rb |