Sha256: 162557a2a5f1750cfbc13c8e7a5e60ebbde9d2b37ab3acf03e265edfc3187266
Contents?: true
Size: 1.4 KB
Versions: 1
Compression:
Stored size: 1.4 KB
Contents
module Merb module RelaxDB class << self def config_file() Merb.dir_for(:config) / "couchdb.yml" end def sample_dest() Merb.dir_for(:config) / "couchdb.yml.sample" end def sample_source() File.dirname(__FILE__) / "couchdb.yml.sample" end def connect begin configure_db Merb.logger.info "RelaxDB: #{::RelaxDB.db.uri}/_design/#{::RelaxDB.dd}" rescue => e uri = ::RelaxDB.db ? ::RelaxDB.db.uri : "<initialisation error>" Merb.logger.fatal "RelaxDB could not connect to CouchDB at #{uri} \n\tRoot cause:#{e}\n#{e.backtrace.join("\n")}" exit(1) end end def configure_db if File.exists?(config_file) full_config = Erubis.load_yaml_file(config_file) config = full_config[Merb.environment.to_sym] config[:logger] = Merb.logger ::RelaxDB.configure(config) ::RelaxDB.db.name = config[:db] else copy_sample_config Merb.logger.error! "No couchdb.yml file found in #{Merb.root}/config." Merb.logger.error! "A sample file was created called couchdb.yml.sample for you to copy and edit." exit(1) end end def copy_sample_config FileUtils.cp sample_source, sample_dest unless File.exists?(sample_dest) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
merb_relaxdb-1.11 | lib/merb_relaxdb/connection.rb |