]> gitweb.fluxo.info Git - puppet-mail.git/commitdiff
Adding schleuder package class, imp4 package and mail::base class
authorSilvio Rhatto <rhatto@riseup.net>
Sun, 15 Aug 2010 16:40:41 +0000 (13:40 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Sun, 15 Aug 2010 16:40:41 +0000 (13:40 -0300)
manifests/base.pp [new file with mode: 0644]
manifests/init.pp
manifests/packages.pp
manifests/system.pp

diff --git a/manifests/base.pp b/manifests/base.pp
new file mode 100644 (file)
index 0000000..972fa10
--- /dev/null
@@ -0,0 +1,53 @@
+class mail::base {
+  # Postfix configuration
+  postfix::config {
+    "mydomain":                            value => "$domain";
+    "myhostname":                          value => "$fqdn";
+    "mydestination":                       value => "$postfix_mydestination";
+    "mynetworks":                          value => "$postfix_mynetworks";
+    "relay_domains":                       value => '$mydestination';
+    "transport_maps":                      value => "hash:/etc/postfix/transport";
+    "mailbox_command":                     value => '/usr/bin/maildrop -d ${USER}';
+    "virtual_mailbox_base":                value => '/var/mail/virtual';
+    "virtual_uid_maps":                    value => 'static:5000';
+    "virtual_gid_maps":                    value => 'static:5000';
+    "virtual_transport":                   value => 'dovecot';
+    "dovecot_destination_recipient_limit": value => '1';
+    "recipient_delimiter":                 value => '+';
+  }
+
+  postfix::hash { "/etc/postfix/virtual":
+    ensure => present,
+  }
+
+  postfix::hash { "/etc/postfix/transport":
+    ensure => present,
+  }
+
+  # Recipient restrictions
+  postfix::config { "smtpd_recipient_restrictions":
+    value => 'permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_rbl_client psbl.surriel.com, check_policy_service inet:127.0.0.1:60000' }
+
+  # Virtual mailboxes
+  file { '/var/mail/virtual':
+    ensure  => directory,
+    owner   => vmail,
+    group   => vmail,
+    mode    => 0750,
+    require => User['vmail'],
+  }
+
+  group { "vmail":
+    ensure => present,
+    gid    => 5000,
+  }
+
+  user { "vmail":
+    ensure   => present,
+    uid      => 5000,
+    gid      => "vmail",
+    password => "*",
+    home     => '/var/mail/virtual',
+    require  => Group['vmail'],
+  }
+}
index 74abb214ad3d75ecb3ac96e311fcbad63746bc4a..bed6e69ed60b14b93ba0f170d2624896d3ddfa16 100644 (file)
@@ -12,3 +12,4 @@ import "tls.pp"
 import "amavisd.pp"
 import "web.pp"
 import "sympa.pp"
+import "base.pp"
index 661bdc845eed55e873113d532c438e02083e720c..ec520092156c33bbccef3cfe396c3ca9796d6c37 100644 (file)
@@ -12,7 +12,7 @@ class mail::packages {
     ensure => installed,
   }
 
-  package { [ 'squirrelmail', 'squirrelmail-locales' ]:
+  package { [ 'squirrelmail', 'squirrelmail-locales', 'imp4' ]:
     ensure => installed,
   } 
 
@@ -27,3 +27,9 @@ class mail::packages::sympa {
     ensure => installed,
   } 
 }
+
+class mail::packages::schleuder {
+  package { 'schleuder':
+    ensure => installed,
+  } 
+}
index 86781addde42495a9eb52b7ceab0f15b1a752ac9..991764b541384e4d4fbcf18047b15b4249225fda 100644 (file)
@@ -38,6 +38,7 @@ class mail::system {
 
   # Subsystems
   include mail::packages
+  include mail::base
   include mail::sasl
   include mail::tls
   include mail::dovecot
@@ -46,7 +47,7 @@ class mail::system {
   include mail::postfixadmin
   include mail::web
 
-  # Mailing list manager
+  # Sympa mailing list manager
   case $mail_sympa {
     true: {
 
@@ -64,55 +65,10 @@ class mail::system {
     }
   }
 
-  # Postfix configuration
-  postfix::config {
-    "mydomain":                            value => "$domain";
-    "myhostname":                          value => "$fqdn";
-    "mydestination":                       value => "$postfix_mydestination";
-    "mynetworks":                          value => "$postfix_mynetworks";
-    "relay_domains":                       value => '$mydestination';
-    "transport_maps":                      value => "hash:/etc/postfix/transport";
-    "mailbox_command":                     value => '/usr/bin/maildrop -d ${USER}';
-    "virtual_mailbox_base":                value => '/var/mail/virtual';
-    "virtual_uid_maps":                    value => 'static:5000';
-    "virtual_gid_maps":                    value => 'static:5000';
-    "virtual_transport":                   value => 'dovecot';
-    "dovecot_destination_recipient_limit": value => '1';
-    "recipient_delimiter":                 value => '+';
-  }
-
-  postfix::hash { "/etc/postfix/virtual":
-    ensure => present,
-  }
-
-  postfix::hash { "/etc/postfix/transport":
-    ensure => present,
-  }
-
-  # Recipient restrictions
-  postfix::config { "smtpd_recipient_restrictions":
-    value => 'permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_rbl_client psbl.surriel.com, check_policy_service inet:127.0.0.1:60000' }
-
-  # Virtual mailboxes
-  file { '/var/mail/virtual':
-    ensure  => directory,
-    owner   => vmail,
-    group   => vmail,
-    mode    => 0750,
-    require => User['vmail'],
-  }
-
-  group { "vmail":
-    ensure => present,
-    gid    => 5000,
-  }
-
-  user { "vmail":
-    ensure   => present,
-    uid      => 5000,
-    gid      => "vmail",
-    password => "*",
-    home     => '/var/mail/virtual',
-    require  => Group['vmail'],
+  # Schleuder mailing list manager
+  case $mail_schleuder {
+    true: {
+      include mail::packages::schleuder
+    }
   }
 }