X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Fftp_master.pp;h=37219b68c315f0e0c8c4f5468fcbd19027c87b98;hb=7faa529dc53ec3a141d018231c27a9a36707c727;hp=357b0d0e81eeb8d490faa0240046e561bf58b320;hpb=10d6c58819874b3c6e8816398d88f9dc851c4240;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/ftp_master.pp b/modules/roles/manifests/ftp_master.pp index 357b0d0e8..37219b68c 100644 --- a/modules/roles/manifests/ftp_master.pp +++ b/modules/roles/manifests/ftp_master.pp @@ -1,12 +1,43 @@ -class roles::ftp_master { - rsync::site { 'dakmaster': - source => 'puppet:///modules/roles/dakmaster/rsyncd.conf', - max_clients => 100, - sslname => 'ftp-master.debian.org', - } - - ssl::service { 'ftp-master.debian.org': - notify => Exec['service apache2 reload'], - key => true, - } +# ftpmaster role +# +# @param db_port port of the database cluster for ftp-master's dak +class roles::ftp_master ( + Integer $db_port, +) +{ + include roles::dakmaster + include roles::signing + include roles::historical_master + include apache2 + + rsync::site { 'dakmaster': + source => 'puppet:///modules/roles/dakmaster/rsyncd.conf', + # Needs to be at least number of direct mirrors plus some spare + max_clients => 50, + sslname => 'ftp-master.debian.org', + } + + ssl::service { 'ftp-master.debian.org': + notify => Exec['service apache2 reload'], + key => true, + tlsaport => [443, 1873], + } + + # export ssh allow rules for hosts that we should be able to access + @@ferm::rule::simple { "dsa-ssh-from-ftp_master-${::fqdn}": + tag => 'ssh::server::from::ftp_master', + description => 'Allow ssh access from ftp_master', + chain => 'ssh', + saddr => $base::public_addresses, + } + + postgres::cluster::hba_entry { 'dak-guest': + pg_port => $db_port, + database => 'projectb', + user => 'guest', + address => '127.0.0.1', + method => 'trust', + order => '20', + firewall => false, + } }