X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Fbuildd_master.pp;h=a25e85de852a4ccdf57ab0fea78ecab23372f4ef;hb=cd460754b2216a0531071902e1412024c594d72c;hp=7fe1043918b46f20b082b340678e8c5dee1b8841;hpb=1dcc6fe3850322c2f049162ae7f453db18b9f919;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/buildd_master.pp b/modules/roles/manifests/buildd_master.pp index 7fe104391..a25e85de8 100644 --- a/modules/roles/manifests/buildd_master.pp +++ b/modules/roles/manifests/buildd_master.pp @@ -1,10 +1,55 @@ -class roles::buildd_master { +# 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, + notify => Exec['service apache2 reload'], + key => true, + } + + ssh::authorized_key_collect { 'buildd-master': + target_user => 'wb-buildd', + collect_tag => 'buildd_master', } - file { '/etc/ssh/userkeys/wb-buildd.more': - content => template('roles/buildd_master_wb-authorized_keys.erb'), + 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, } }