want systemd-timesyncd from multi-user.target
[mirror/dsa-puppet.git] / modules / systemdtimesyncd / manifests / init.pp
1 class systemdtimesyncd {
2         $localtimeservers = hiera('local-timeservers', [])
3
4         if (! $systemd) {
5                 fail ( "systemdtimesyncd requires systemd." )
6         } elsif (size($localtimeservers) == 0) {
7                 fail ( "No local timeservers configured for systemdtimesyncd." )
8         } else {
9                 file { '/etc/systemd/system/sysinit.target.wants/systemd-timesyncd.service':
10                         ensure => 'absent',
11                         notify => Exec['systemctl daemon-reload'],
12                 }
13                 file { '/etc/systemd/system/multi-user.target.wants':
14                         ensure => 'directory',
15                 }
16                 file { '/etc/systemd/system/multi-user.target.wants/systemd-timesyncd.service':
17                         ensure => 'link',
18                         target => '/lib/systemd/system/systemd-timesyncd.service',
19                         notify => Exec['systemctl daemon-reload'],
20                 }
21
22                 service { 'systemd-timesyncd':
23                         ensure  => running,
24                 }
25
26                 file { '/etc/systemd/timesyncd.conf':
27                         content => template('systemdtimesyncd/timesyncd.conf.erb'),
28                         notify  => Service['systemd-timesyncd'],
29                 }
30         }
31 }