From 21fb605e3a57455e4a46c495ffcf36502f8fd1b9 Mon Sep 17 00:00:00 2001 From: Azul Date: Wed, 11 Sep 2013 08:31:22 +0200 Subject: write _security to fresh couch --- lib/tapicero/config.rb | 1 + lib/tapicero/couch_database_creator.rb | 9 +++++++-- lib/tapicero_daemon.rb | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) (limited to 'lib') 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 -- cgit v1.2.3