diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/tapicero/config.rb | 1 | ||||
-rw-r--r-- | lib/tapicero/couch_database_creator.rb | 9 | ||||
-rw-r--r-- | lib/tapicero_daemon.rb | 2 |
3 files changed, 9 insertions, 3 deletions
diff --git a/lib/tapicero/config.rb b/lib/tapicero/config.rb index ab00460..f760cca 100644 --- a/lib/tapicero/config.rb +++ b/lib/tapicero/config.rb @@ -7,6 +7,7 @@ module Tapicero attr_accessor :users_db_name attr_accessor :db_prefix attr_accessor :couch_connection + attr_accessor :security def self.load(base_dir, *configs) configs.each do |file_path| diff --git a/lib/tapicero/couch_database_creator.rb b/lib/tapicero/couch_database_creator.rb index a4aaa0f..5a2849b 100644 --- a/lib/tapicero/couch_database_creator.rb +++ b/lib/tapicero/couch_database_creator.rb @@ -1,14 +1,19 @@ require 'couchrest' +require 'json' module Tapicero class CouchDatabaseCreator def initialize(host) + @host = host @couch = CouchRest.new(host) end - def create(name) - @couch.database(name).create! + def create(name, security = {}) + db = @couch.create_db(name) + puts security.to_json + puts "-> #{@host}#{name}/_security" + CouchRest.put "#{@host}#{name}/_security", security end end end diff --git a/lib/tapicero_daemon.rb b/lib/tapicero_daemon.rb index bd65d7f..330bba6 100644 --- a/lib/tapicero_daemon.rb +++ b/lib/tapicero_daemon.rb @@ -15,7 +15,7 @@ module Tapicero creator = CouchDatabaseCreator.new(Config.couch_host) users.created do |hash| puts "Created user " + hash[:id] - creator.create(Config.db_prefix + hash[:id]) + creator.create(Config.db_prefix + hash[:id], Config.security) end users.listen |