X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Fbuildd_master.pp;h=a25e85de852a4ccdf57ab0fea78ecab23372f4ef;hb=6d227b8973b5f73b3cb558312bdcc895ab70e04b;hp=63570efdca4542b4178d7a6623524bc618267bc9;hpb=8e104735c829bddd66c9f0aacfa0f41e92eed57d;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/buildd_master.pp b/modules/roles/manifests/buildd_master.pp index 63570efdc..a25e85de8 100644 --- a/modules/roles/manifests/buildd_master.pp +++ b/modules/roles/manifests/buildd_master.pp @@ -1,9 +1,55 @@ -class roles::buildd_master { - ssl::service { 'buildd.debian.org': - notify => Exec['service apache2 reload'], - } - - file { '/etc/ssh/userkeys/wb-buildd.more': - content => template('roles/buildd_master_wb-authorized_keys.erb'), - } +# wanna-build +# +# @param db_address hostname of the postgres server for this service +# @param db_port port of the postgres server for this service +# @param qa_buildlogchecks_db_address hostname of the postgres server for this service +# @param qa_buildlogchecks_db_port port of the postgres server for this service +class roles::buildd_master ( + String $qa_buildlogchecks_db_address, + Integer $qa_buildlogchecks_db_port, + String $db_address = $roles::buildd_master::params::db_address, + Integer $db_port = $roles::buildd_master::params::db_port, +) inherits roles::buildd_master::params { + include apache2 + include roles::sso_rp + + ssl::service { 'buildd.debian.org': + notify => Exec['service apache2 reload'], + key => true, + } + + ssh::authorized_key_collect { 'buildd-master': + target_user => 'wb-buildd', + collect_tag => 'buildd_master', + } + + exim::vdomain { 'buildd.debian.org': + owner => 'wbadm', + group => 'wbadm', + } + + class { 'roles::buildd_master::db_guest_access': + database => ['wanna-build', 'wanna-build-test'], + } + + @@postgres::cluster::hba_entry { "buildd_master-${::fqdn}": + tag => "postgres::cluster::${db_port}::hba::${db_address}", + pg_port => $db_port, + database => ['wanna-build', 'wanna-build-test'], + user => 'all', + address => $base::public_addresses, + } + + # The UDD database is used to display FTBFS bugs on the web interface + include roles::udd::db_guest_access + + include roles::postgresql::ftp_master_dak_replica::db_guest_access::ubc + + @@postgres::cluster::hba_entry { "qa-buildlogchecks-${::fqdn}": + tag => "postgres::cluster::${qa_buildlogchecks_db_port}::hba::${qa_buildlogchecks_db_address}", + pg_port => $qa_buildlogchecks_db_port, + database => 'qa-buildlogchecks', + user => 'qa-buildlogchecks', + address => $base::public_addresses, + } }