Browse Source

default attribute values fixed and support for hashes in listeners

Xabier de Zuazo 11 years ago
parent
commit
d40a1652d9

+ 8 - 8
attributes/auth.rb

@@ -1,7 +1,7 @@
 
 default['dovecot']['auth'] = {}
 
-default['dovecot']['auth']['checkpassword'] = nil
+# default['dovecot']['auth']['checkpassword'] = nil
 # default['dovecot']['auth']['checkpassword'] = { # hash
 #   'passdb' => {
 #     'driver' => 'checkpassword',
@@ -11,12 +11,12 @@ default['dovecot']['auth']['checkpassword'] = nil
 #     'driver' => 'prefetch',
 #   },
 # }
-default['dovecot']['auth']['deny'] = nil
-default['dovecot']['auth']['ldap'] = nil
-default['dovecot']['auth']['master'] = nil
-default['dovecot']['auth']['passwdfile'] = nil
-default['dovecot']['auth']['sql'] = nil
-default['dovecot']['auth']['system'] = {}
+# default['dovecot']['auth']['deny'] = nil
+# default['dovecot']['auth']['ldap'] = nil
+# default['dovecot']['auth']['master'] = nil
+# default['dovecot']['auth']['passwdfile'] = nil
+# default['dovecot']['auth']['sql'] = nil
+# default['dovecot']['auth']['system'] = {}
 # default['dovecot']['auth']['system']['passdb'] = [ # array
 #   {
 #     # without driver
@@ -35,5 +35,5 @@ default['dovecot']['auth']['system'] = {}
 #     'args' => '',
 #   },
 # ]
-default['dovecot']['auth']['vpopmail'] = nil
+# default['dovecot']['auth']['vpopmail'] = nil
 

+ 1 - 1
attributes/conf-dovecot-dict-sql.rb

@@ -1,7 +1,7 @@
 
 default['dovecot']['conf']['dict_sql']['connect'] = nil
 # default['dovecot']['conf']['dict_sql']['connect'] = 'host=localhost dbname=mails user=testuser password=pass'
-default['dovecot']['conf']['dict_sql']['maps'] = nil
+# default['dovecot']['conf']['dict_sql']['maps'] = nil
 # default['dovecot']['conf']['dict_sql']['maps'] = [
 #   {
 #     'pattern' => 'priv/quota/storage',

+ 3 - 3
attributes/plugins.rb

@@ -1,13 +1,13 @@
 
 default['dovecot']['conf']['mail_plugins'] = []
 
-default['dovecot']['plugins']['mail_log'] = nil
+# default['dovecot']['plugins']['mail_log'] = nil
 # default['dovecot']['plugins']['mail_log'] = {
 #   'mail_log_events' => 'delete undelete expunge copy mailbox_delete mailbox_rename',
 #   'mail_log_fields' => 'uid box msgid size'
 # }
-default['dovecot']['plugins']['acl'] = nil
-default['dovecot']['plugins']['quota'] = nil
+# default['dovecot']['plugins']['acl'] = nil
+# default['dovecot']['plugins']['quota'] = nil
 default['dovecot']['plugins']['sieve'] = {
   'sieve' => '~/.dovecot.sieve',
   'sieve_dir' => '~/sieve',

+ 5 - 5
attributes/protocols.rb

@@ -1,12 +1,12 @@
 
 default['dovecot']['protocols'] = {}
 
-default['dovecot']['protocols']['lda'] = nil
+# default['dovecot']['protocols']['lda'] = nil
 # default['dovecot']['protocols']['lda'] = {
 #   'mail_plugins' => [ '$mail_plugins' ],
 # }
-default['dovecot']['protocols']['imap'] = {}
-default['dovecot']['protocols']['lmtp'] = nil
-default['dovecot']['protocols']['sieve'] = nil
-default['dovecot']['protocols']['pop3'] = nil
+# default['dovecot']['protocols']['imap'] = {}
+# default['dovecot']['protocols']['lmtp'] = nil
+# default['dovecot']['protocols']['sieve'] = nil
+# default['dovecot']['protocols']['pop3'] = nil
 

+ 11 - 11
attributes/services.rb

@@ -1,7 +1,7 @@
 
 default['dovecot']['services'] = {}
 
-default['dovecot']['services']['director'] = nil
+# default['dovecot']['services']['director'] = nil
 # default['dovecot']['services']['director']['listeners'] = [
 #   { 'unix:login/director' => {
 #       'mode' => '0666',
@@ -16,7 +16,7 @@ default['dovecot']['services']['director'] = nil
 #       'port' => '5432',
 #   } },
 # ]
-default['dovecot']['services']['imap-login'] = nil
+# default['dovecot']['services']['imap-login'] = nil
 # default['dovecot']['services']['imap-login'] = {
 #   'listeners' => [
 #     { 'inet:imap' => {
@@ -31,14 +31,14 @@ default['dovecot']['services']['imap-login'] = nil
 #   # 'process_min_avail' => 0,
 #   # 'vsz_limit' => '64M',
 # }
-default['dovecot']['services']['pop3-login'] = nil
-default['dovecot']['services']['lmtp'] = nil
-default['dovecot']['services']['imap'] = nil
-default['dovecot']['services']['pop3'] = nil
-default['dovecot']['services']['auth'] = nil
-default['dovecot']['services']['auth-worker'] = nil
-default['dovecot']['services']['dict'] = nil
+# default['dovecot']['services']['pop3-login'] = nil
+# default['dovecot']['services']['lmtp'] = nil
+# default['dovecot']['services']['imap'] = nil
+# default['dovecot']['services']['pop3'] = nil
+# default['dovecot']['services']['auth'] = nil
+# default['dovecot']['services']['auth-worker'] = nil
+# default['dovecot']['services']['dict'] = nil
 
-default['dovecot']['services']['managesieve-login'] = nil
-default['dovecot']['services']['managesieve'] = nil
+# default['dovecot']['services']['managesieve-login'] = nil
+# default['dovecot']['services']['managesieve'] = nil
 

+ 4 - 3
libraries/conf.rb

@@ -34,7 +34,7 @@ module Dovecot
     def self.authdb(driver, type, conf)
 
       template =
-'<% confs = [ @conf ].flatten
+'<% confs = [ @conf ].flatten(1)
     confs.each do |conf| -%>
 <%=   @type %> {
   <%  unless conf.has_key?("driver") -%>
@@ -117,8 +117,9 @@ module Dovecot
 
       template =
 'service <%= @name %> {
-  <% if @conf["listeners"].kind_of?(Array)
-      @conf["listeners"].each do |listener|
+  <% if @conf["listeners"].kind_of?(Array) or @conf["listeners"].kind_of?(Hash)
+      listeners = [ @conf["listeners"] ].flatten(1)
+      listeners.each do |listener|
         listener.sort.each do |service, values|
           service_proto = service.split(":")[0]
           service_name = service.split(":")[1]