Sha256: b56111d59c5c4600bf36961cdfcec58913e88c4ba5d606466d1d96e576614095

Contents?: true

Size: 792 Bytes

Versions: 10

Compression:

Stored size: 792 Bytes

Contents

module RorVsWild
  class RailsLoader
    def self.start_on_rails_initialization
      return if !defined?(Rails)
      Rails::Railtie.initializer "rorvswild.detect_config_file" do
        RorVsWild::RailsLoader.start
      end
    end

    def self.start
      return if RorVsWild.agent

      if (config = load_config) && config[:api_key]
        RorVsWild.start(config)
      elsif Rails.env.development?
        require "rorvswild/local"
        RorVsWild::Local.start(config || {})
      end
    end

    def self.load_config
      if (path = Rails.root.join("config/rorvswild.yml")).exist?
        yaml = ERB.new(path.read).result
        hash = YAML.safe_load(yaml, permitted_classes: [Regexp])
        hash[Rails.env] && hash[Rails.env].deep_symbolize_keys
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
rorvswild-1.9.1 lib/rorvswild/rails_loader.rb
rorvswild-1.9.0 lib/rorvswild/rails_loader.rb
rorvswild-1.8.1 lib/rorvswild/rails_loader.rb
rorvswild-1.8.0 lib/rorvswild/rails_loader.rb
rorvswild-1.7.1 lib/rorvswild/rails_loader.rb
rorvswild-1.7.0 lib/rorvswild/rails_loader.rb
rorvswild-1.6.5 lib/rorvswild/rails_loader.rb
rorvswild-1.6.4 lib/rorvswild/rails_loader.rb
rorvswild-1.6.3 lib/rorvswild/rails_loader.rb
rorvswild-1.6.2 lib/rorvswild/rails_loader.rb