1 |
class postfix { |
2 |
|
3 |
class base { |
4 |
package { postfix: |
5 |
ensure => installed |
6 |
} |
7 |
package { 'nail': |
8 |
ensure => installed |
9 |
} |
10 |
service { postfix: |
11 |
ensure => running, |
12 |
subscribe => [ Package['postfix']], |
13 |
path => "/etc/init.d/postfix" |
14 |
} |
15 |
} |
16 |
|
17 |
file { '/etc/postfix/main.cf': |
18 |
ensure => present, |
19 |
owner => root, |
20 |
group => root, |
21 |
mode => 644, |
22 |
require => Package["postfix"], |
23 |
content => "", |
24 |
notify => [Service['postfix']] |
25 |
} |
26 |
|
27 |
|
28 |
class simple_relay inherits base { |
29 |
file { '/etc/postfix/main.cf': |
30 |
content => template("postfix/simple_relay_main.cf"), |
31 |
} |
32 |
} |
33 |
|
34 |
class primary_smtp inherits base { |
35 |
file { '/etc/postfix/main.cf': |
36 |
content => template("postfix/primary_main.cf"), |
37 |
} |
38 |
} |
39 |
|
40 |
class secondary_smtp inherits base { |
41 |
file { '/etc/postfix/main.cf': |
42 |
content => template("postfix/secondary_main.cf"), |
43 |
} |
44 |
} |
45 |
|
46 |
} |