X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fvsftpd%2Fmanifests%2Fsite.pp;h=04dcb20106e1e09585f6686bd879299d5ecd225b;hb=14939bab78c7c6231e7b13a5b0e655e934b456f0;hp=bc66c95d277b086e79db15dbea3deaf33a0387e1;hpb=a8faece43f89960c6686321309b3082c7a531cac;p=mirror%2Fdsa-puppet.git diff --git a/modules/vsftpd/manifests/site.pp b/modules/vsftpd/manifests/site.pp index bc66c95d2..04dcb2010 100644 --- a/modules/vsftpd/manifests/site.pp +++ b/modules/vsftpd/manifests/site.pp @@ -1,10 +1,12 @@ class vsftpd::site ( $source='', $content='', - $ensure=present, + $bind=$::ipaddress, + $ensure=present ){ include vsftpd + include vsftpd::nolisten if ($source and $content) { fail ( "Can't have both source and content for $name" ) @@ -15,20 +17,32 @@ class vsftpd::site ( default: { fail ( "Invald ensure `$ensure' for $name" ) } } + $fname = "/etc/vsftpd-${name}.conf" + if $source { - file { '/etc/vsftpd.conf': + file { $fname: ensure => $ensure, + noop => true, source => $source, - notify => Service['vsftpd'] } } elsif $content { - file { '/etc/vsftpd.conf': + file { $fname: ensure => $ensure, + noop => true, content => $content, - notify => Service['vsftpd'] } } else { fail ( "Need one of source or content for $name" ) } + # We don't need a firewall rule because it's added in vsftp.pp + xinetd::service { "vsftpd-${name}": + bind => $bind, + id => $name, + server => '/usr/sbin/vsftpd', + port => 'ftp', + server_args => $fname, + ferm => false, + } + }