]> gitweb.fluxo.info Git - puppet-postfix.git/commitdiff
put classes and defines in the proper place
authormh <mh@immerda.ch>
Thu, 16 Feb 2012 15:51:56 +0000 (16:51 +0100)
committermh <mh@immerda.ch>
Thu, 16 Feb 2012 15:51:56 +0000 (16:51 +0100)
To take advantage of puppet's autoloading feature, which will be
mandatory sooner or later. We move all the files in their appropriate
place.

16 files changed:
manifests/amavis.pp [moved from manifests/classes/postfix-amavis.pp with 100% similarity]
manifests/anonsasl.pp [moved from manifests/classes/postfix-anonsasl.pp with 100% similarity]
manifests/classes/postfix.pp [deleted file]
manifests/config.pp [moved from manifests/definitions/config.pp with 100% similarity]
manifests/hash.pp [moved from manifests/definitions/hash.pp with 100% similarity]
manifests/header_checks.pp [moved from manifests/classes/postfix-header_checks.pp with 100% similarity]
manifests/header_checks_snippet.pp [moved from manifests/definitions/header_checks_snippet.pp with 100% similarity]
manifests/init.pp
manifests/mailalias.pp [moved from manifests/definitions/mailalias.pp with 100% similarity]
manifests/mailman.pp [moved from manifests/classes/postfix-mailman.pp with 100% similarity]
manifests/mta.pp [moved from manifests/classes/postfix-mta.pp with 100% similarity]
manifests/satellite.pp [moved from manifests/classes/postfix-satellite.pp with 100% similarity]
manifests/tlspolicy.pp [moved from manifests/classes/postfix-tlspolicy.pp with 100% similarity]
manifests/tlspolicy_snippet.pp [moved from manifests/definitions/tlspolicy_snippet.pp with 100% similarity]
manifests/transport.pp [moved from manifests/definitions/transport.pp with 100% similarity]
manifests/virtual.pp [moved from manifests/definitions/virtual.pp with 100% similarity]

diff --git a/manifests/classes/postfix.pp b/manifests/classes/postfix.pp
deleted file mode 100644 (file)
index 63a50b9..0000000
+++ /dev/null
@@ -1,178 +0,0 @@
-#
-# == Class: postfix
-#
-# This class provides a basic setup of postfix with local and remote
-# delivery and an SMTP server listening on the loopback interface.
-#
-# Parameters:
-# - *$postfix_smtp_listen*: address on which the smtp service will listen to. defaults to 127.0.0.1
-# - *$root_mail_recipient*: who will recieve root's emails. defaults to "nobody"
-#
-# Example usage:
-#
-#   node "toto.example.com" {
-#     $postfix_smtp_listen = "192.168.1.10"
-#     include postfix
-#   }
-#
-class postfix {
-
-  # selinux labels differ from one distribution to another
-  case $operatingsystem {
-
-    RedHat, CentOS: {
-      case $lsbmajdistrelease {
-        "4":     { $postfix_seltype = "etc_t" }
-        "5":     { $postfix_seltype = "postfix_etc_t" }
-        default: { $postfix_seltype = undef }
-      }
-    }
-
-    default: {
-      $postfix_seltype = undef
-    }
-  }
-
-  # Default value for various options
-  case $postfix_smtp_listen {
-    "": { $postfix_smtp_listen = "127.0.0.1" }
-  }
-  case $root_mail_recipient {
-    "":   { $root_mail_recipient = "nobody" }
-  }
-  case $postfix_anon_sasl {
-    "":    { $postfix_anon_sasl = "no" }
-  }
-  case $postfix_manage_header_checks {
-    "":   { $postfix_manage_header_checks = "no" }
-  }
-  case $postfix_manage_tls_policy {
-    "":   { $postfix_manage_tls_policy = "no" }
-  }
-  case $postfix_use_amavisd {
-    "":   { $postfix_use_amavisd = "no" }
-  }
-  case $postfix_use_dovecot_lda {
-    "":   { $postfix_use_dovecot_lda = "no" }
-  }
-  case $postfix_use_schleuder {
-    "":   { $postfix_use_schleuder = "no" }
-  }
-  case $postfix_use_sympa {
-    "":   { $postfix_use_sympa = "no" }
-  }
-  case $postfix_mastercf_tail {
-    "":   { $postfix_mastercf_tail = "" }
-  }
-  case $postfix_inet_interfaces {
-    "": { $postfix_inet_interfaces = 'all' }
-  }
-  case $postfix_myorigin {
-    "": { $postfix_myorigin = $fqdn }
-  }
-
-  # Bootstrap moduledir
-  include common::moduledir
-  module_dir{'postfix': }
-
-  # Include optional classes
-  if $postfix_anon_sasl == 'yes' {
-    include postfix::anonsasl
-  }
-  if $postfix_manage_header_checks == 'yes' {
-    include postfix::header_checks
-  }
-  if $postfix_manage_tls_policy == 'yes' {
-    include postfix::tlspolicy
-  }
-  if $postfix_use_amavisd == 'yes' {
-    include postfix::amavis
-  }
-
-  package { ["postfix", "mailx"]:
-    ensure => installed
-  }
-
-  if $operatingsystem == 'debian' {
-    Package[mailx] { name => 'bsd-mailx' }
-  }
-
-  service { "postfix":
-    ensure  => running,
-    require => Package["postfix"],
-  }
-
-  file { "/etc/mailname":
-    ensure  => present,
-    content => "${fqdn}\n",
-    seltype => $postfix_seltype,
-  }
-
-  # Aliases
-  file { "/etc/aliases":
-    ensure => present,
-    content => "# file managed by puppet\n",
-    replace => false,
-    seltype => $postfix_seltype,
-    notify => Exec["newaliases"],
-  }
-
-  # Aliases
-  exec { "newaliases":
-    command     => "/usr/bin/newaliases",
-    refreshonly => true,
-    require     => Package["postfix"],
-    subscribe   => File["/etc/aliases"],
-  }
-
-  # Config files
-  file { "/etc/postfix/master.cf":
-    ensure  => present,
-    owner => "root",
-    group => "root",
-    mode => "0644",
-    content => $operatingsystem ? {
-      Redhat => template("postfix/master.cf.redhat5.erb"),
-      CentOS => template("postfix/master.cf.redhat5.erb"),
-      Debian => template("postfix/master.cf.debian-$lsbdistcodename.erb"),
-      Ubuntu => template("postfix/master.cf.debian-etch.erb"),
-    },
-    seltype => $postfix_seltype,
-    notify  => Service["postfix"],
-    require => Package["postfix"],
-  }
-
-  # Config files
-  file { "/etc/postfix/main.cf":
-    ensure  => present,
-    owner => "root",
-    group => "root",
-    mode => "0644",
-    source  => "puppet:///modules/postfix/main.cf",
-    replace => false,
-    seltype => $postfix_seltype,
-    notify  => Service["postfix"],
-    require => Package["postfix"],
-  }
-
-  # Default configuration parameters
-  postfix::config {
-    "myorigin":   value => "${postfix_myorigin}";
-    "alias_maps": value => "hash:/etc/aliases";
-    "inet_interfaces": value => "${postfix_inet_interfaces}";
-  }
-
-  case $operatingsystem {
-    RedHat, CentOS: {
-      postfix::config {
-        "sendmail_path": value => "/usr/sbin/sendmail.postfix";
-        "newaliases_path": value => "/usr/bin/newaliases.postfix";
-        "mailq_path": value => "/usr/bin/mailq.postfix";
-      }
-    }
-  }
-
-  postfix::mailalias {"root":
-    recipient => $root_mail_recipient,
-  }
-}
index 6cc196984538866527976cfecefe39bf4de9c63c..63a50b958e8874d989ff3e7a32fd2bb75ad9a5f8 100644 (file)
@@ -1,2 +1,178 @@
-import "classes/*.pp"
-import "definitions/*.pp"
+#
+# == Class: postfix
+#
+# This class provides a basic setup of postfix with local and remote
+# delivery and an SMTP server listening on the loopback interface.
+#
+# Parameters:
+# - *$postfix_smtp_listen*: address on which the smtp service will listen to. defaults to 127.0.0.1
+# - *$root_mail_recipient*: who will recieve root's emails. defaults to "nobody"
+#
+# Example usage:
+#
+#   node "toto.example.com" {
+#     $postfix_smtp_listen = "192.168.1.10"
+#     include postfix
+#   }
+#
+class postfix {
+
+  # selinux labels differ from one distribution to another
+  case $operatingsystem {
+
+    RedHat, CentOS: {
+      case $lsbmajdistrelease {
+        "4":     { $postfix_seltype = "etc_t" }
+        "5":     { $postfix_seltype = "postfix_etc_t" }
+        default: { $postfix_seltype = undef }
+      }
+    }
+
+    default: {
+      $postfix_seltype = undef
+    }
+  }
+
+  # Default value for various options
+  case $postfix_smtp_listen {
+    "": { $postfix_smtp_listen = "127.0.0.1" }
+  }
+  case $root_mail_recipient {
+    "":   { $root_mail_recipient = "nobody" }
+  }
+  case $postfix_anon_sasl {
+    "":    { $postfix_anon_sasl = "no" }
+  }
+  case $postfix_manage_header_checks {
+    "":   { $postfix_manage_header_checks = "no" }
+  }
+  case $postfix_manage_tls_policy {
+    "":   { $postfix_manage_tls_policy = "no" }
+  }
+  case $postfix_use_amavisd {
+    "":   { $postfix_use_amavisd = "no" }
+  }
+  case $postfix_use_dovecot_lda {
+    "":   { $postfix_use_dovecot_lda = "no" }
+  }
+  case $postfix_use_schleuder {
+    "":   { $postfix_use_schleuder = "no" }
+  }
+  case $postfix_use_sympa {
+    "":   { $postfix_use_sympa = "no" }
+  }
+  case $postfix_mastercf_tail {
+    "":   { $postfix_mastercf_tail = "" }
+  }
+  case $postfix_inet_interfaces {
+    "": { $postfix_inet_interfaces = 'all' }
+  }
+  case $postfix_myorigin {
+    "": { $postfix_myorigin = $fqdn }
+  }
+
+  # Bootstrap moduledir
+  include common::moduledir
+  module_dir{'postfix': }
+
+  # Include optional classes
+  if $postfix_anon_sasl == 'yes' {
+    include postfix::anonsasl
+  }
+  if $postfix_manage_header_checks == 'yes' {
+    include postfix::header_checks
+  }
+  if $postfix_manage_tls_policy == 'yes' {
+    include postfix::tlspolicy
+  }
+  if $postfix_use_amavisd == 'yes' {
+    include postfix::amavis
+  }
+
+  package { ["postfix", "mailx"]:
+    ensure => installed
+  }
+
+  if $operatingsystem == 'debian' {
+    Package[mailx] { name => 'bsd-mailx' }
+  }
+
+  service { "postfix":
+    ensure  => running,
+    require => Package["postfix"],
+  }
+
+  file { "/etc/mailname":
+    ensure  => present,
+    content => "${fqdn}\n",
+    seltype => $postfix_seltype,
+  }
+
+  # Aliases
+  file { "/etc/aliases":
+    ensure => present,
+    content => "# file managed by puppet\n",
+    replace => false,
+    seltype => $postfix_seltype,
+    notify => Exec["newaliases"],
+  }
+
+  # Aliases
+  exec { "newaliases":
+    command     => "/usr/bin/newaliases",
+    refreshonly => true,
+    require     => Package["postfix"],
+    subscribe   => File["/etc/aliases"],
+  }
+
+  # Config files
+  file { "/etc/postfix/master.cf":
+    ensure  => present,
+    owner => "root",
+    group => "root",
+    mode => "0644",
+    content => $operatingsystem ? {
+      Redhat => template("postfix/master.cf.redhat5.erb"),
+      CentOS => template("postfix/master.cf.redhat5.erb"),
+      Debian => template("postfix/master.cf.debian-$lsbdistcodename.erb"),
+      Ubuntu => template("postfix/master.cf.debian-etch.erb"),
+    },
+    seltype => $postfix_seltype,
+    notify  => Service["postfix"],
+    require => Package["postfix"],
+  }
+
+  # Config files
+  file { "/etc/postfix/main.cf":
+    ensure  => present,
+    owner => "root",
+    group => "root",
+    mode => "0644",
+    source  => "puppet:///modules/postfix/main.cf",
+    replace => false,
+    seltype => $postfix_seltype,
+    notify  => Service["postfix"],
+    require => Package["postfix"],
+  }
+
+  # Default configuration parameters
+  postfix::config {
+    "myorigin":   value => "${postfix_myorigin}";
+    "alias_maps": value => "hash:/etc/aliases";
+    "inet_interfaces": value => "${postfix_inet_interfaces}";
+  }
+
+  case $operatingsystem {
+    RedHat, CentOS: {
+      postfix::config {
+        "sendmail_path": value => "/usr/sbin/sendmail.postfix";
+        "newaliases_path": value => "/usr/bin/newaliases.postfix";
+        "mailq_path": value => "/usr/bin/mailq.postfix";
+      }
+    }
+  }
+
+  postfix::mailalias {"root":
+    recipient => $root_mail_recipient,
+  }
+}