- if $bind6 != '' {
- if $bind == '' {
- fail("Cannot listen on * and a specific ipv6 address")
- }
- xinetd::service { "rsync-${name}6":
- bind => $bind6,
- id => "${name}-rsync6",
- server => '/usr/bin/rsync',
- service => 'rsync',
- server_args => "--daemon --config=${fname_real}",
- ferm => false,
- instances => $max_clients,
- require => File[$fname_real]
- }
+ file { "/etc/systemd/system/rsyncd-${name}@.service":
+ ensure => $ensure,
+ content => template('rsync/systemd-rsyncd.service.erb'),
+ owner => 'root',
+ group => 'root',
+ mode => '0444',
+ require => File[$fname_real_rsync],
+ notify => Exec['systemctl daemon-reload'],
+ }
+
+ file { "/etc/systemd/system/rsyncd-${name}.socket":
+ ensure => $ensure,
+ content => template('rsync/systemd-rsyncd.socket.erb'),
+ owner => 'root',
+ group => 'root',
+ mode => '0444',
+ notify => [
+ Exec['systemctl daemon-reload'],
+ Service["rsyncd-${name}.socket"],
+ ],
+ }
+
+ service { "rsyncd-${name}.socket":
+ ensure => $ensure_service,
+ enable => $ensure_enable,
+ require => [
+ Exec['systemctl daemon-reload'],
+ File["/etc/systemd/system/rsyncd-${name}@.service"],
+ File["/etc/systemd/system/rsyncd-${name}.socket"],
+ ],
+ provider => systemd,