]> git.netwichtig.de Git - user/henk/code/puppet/modules/henks_ircservices.git/blob - manifests/network.pp
add dependency
[user/henk/code/puppet/modules/henks_ircservices.git] / manifests / network.pp
1 define henks_ircservices::network (
2   String $run_user = "irc-services-${name}",
3   String $network_name = $name,
4 ) {
5   $service_base = "/etc/s6-services/irc-services-${network_name}/"
6
7   user {
8     $run_user:
9       ensure     => present,
10       groups     => [ 'ssl-cert', ],
11       password   => '!',
12       managehome => true,
13     ;
14   }
15
16   file {
17     $service_base:
18       ensure => directory,
19     ;
20     "${service_base}/run":
21       ensure  => present,
22       content => epp(
23         'henks_ircservices/etc/s6-services/irc-services/run.epp',
24         {
25           'network_name' => $network_name,
26           'run_user'     => $run_user,
27         },
28       ),
29       mode    => '0755',
30     ;
31     "${service_base}/timeout-kill":
32       ensure  => present,
33       content => '0',
34     ;
35     "${service_base}/log/":
36       ensure => directory,
37     ;
38     "${service_base}/log/run":
39       ensure  => present,
40       content => epp(
41         'henks_ircservices/etc/s6-services/irc-services/log/run.epp',
42         {
43           'network_name' => $network_name,
44         },
45       ),
46       mode    => '0755',
47     ;
48     "/var/log/s6/irc-services-${network_name}/":
49       ensure => directory,
50       mode   => '0700',
51     ;
52     "/var/log/s6/irc-services-${network_name}/logs/":
53       ensure => directory,
54       mode   => '0700',
55     ;
56   }
57
58   service {
59     "irc-services-${network_name}":
60       ensure   => running,
61       enable   => true,
62       provider => 's6',
63     ;
64   }
65 }