]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - modules/rsync/manifests/site.pp
hmm, this too
[dsa-puppet.git] / modules / rsync / manifests / site.pp
index 6151e912c51f0826667837e0e435a5ef6525c337..bb2ee1446170260dab55fa5bd34b38e07e8f6196 100644 (file)
@@ -2,13 +2,18 @@ define rsync::site (
        $bind='',
        $source='',
        $content='',
-       $fname="/etc/rsyncd-${name}.conf",
+       $fname='',
        $max_clients=200,
        $ensure=present
 ){
 
        include rsync
 
+       if ! $fname {
+               $fname_real = "/etc/rsyncd-${name}.conf"
+       } else {
+               $fname_real = $fname
+       }
        case $ensure {
                present,absent: {}
                default: { fail ( "Invald ensure `${ensure}' for ${name}" ) }
@@ -19,15 +24,13 @@ define rsync::site (
        }
 
        if $source {
-               file { $fname:
+               file { $fname_real:
                        ensure => $ensure,
-                       noop   => true,
                        source => $source
                }
        } elsif $content {
-               file { $fname:
+               file { $fname_real:
                        ensure  => $ensure,
-                       noop    => true,
                        content => $content,
                }
        } else {
@@ -35,15 +38,14 @@ define rsync::site (
        }
 
        xinetd::service { "rsync-${name}":
-               noop        => true,
                bind        => $bind,
                id          => "${name}-rsync",
-               server      => '/usr/sbin/rsyncd',
+               server      => '/usr/bin/rsync',
                port        => 'rsync',
-               server_args => $fname,
+               server_args => "--daemon --config=${fname_real}",
                ferm        => false,
                instances   => $max_clients,
-               require     => File[$fname]
+               require     => File[$fname_real]
        }
 
        Service['rsync']->Service['xinetd']