set TLSA port to 0 in preparation of cert roll for buildd, contributors, ftp-master...
[mirror/dsa-puppet.git] / modules / roles / manifests / init.pp
index 29beab5..badf9a4 100644 (file)
@@ -1,3 +1,11 @@
+# = Class: roles
+#
+# Lookup role and include relevant classes for roles
+#
+# == Sample Usage:
+#
+#   include roles
+#
 class roles {
 
        if has_role('puppetmaster') {
@@ -8,10 +16,11 @@ class roles {
                include munin::master
        }
 
-       if getfromhash($site::nodeinfo, 'nagiosmaster') {
+       if has_role('nagiosmaster') {
        #       include nagios::server
                ssl::service { 'nagios.debian.org':
-                       notify => Service['apache2'],
+                       notify  => Exec['service apache2 reload'],
+                       tlsaport => 0,
                }
        }
 
@@ -25,21 +34,44 @@ class roles {
                include porterbox
        }
 
+       if has_role('archive_master') {
+               include archive_master
+       }
+
        if has_role('bugs_mirror') {
                include roles::bugs_mirror
        }
 
+       if has_role('bugs_base') {
+               ssl::service { 'bugs.debian.org':
+                       notify  => Exec['service apache2 reload'],
+               }
+       }
+       if has_role('bugs_master') {
+               ssl::service { 'bugs-master.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
        if has_role('ftp_master') {
                include roles::ftp_master
                include roles::dakmaster
        }
 
-       if has_role('apache2_security_mirror') {
-               include roles::security_mirror
+       if has_role('api.ftp-master') {
+               ssl::service { 'api.ftp-master.debian.org':
+                       notify  => Exec['service apache2 reload'],
+                       key => true,
+               }
+       }
+
+       if has_role('manpages') {
+               ssl::service { 'manpages.debian.org': notify  => Exec['service apache2 reload'], key => true, }
        }
 
-       if has_role('apache2_www_mirror') {
-               include roles::www_mirror
+       if has_role('security_mirror') {
+               include roles::security_mirror
+       }
+       if has_role('debug_mirror') {
+               include roles::debug_mirror
        }
 
        if has_role('ftp.d.o') {
@@ -50,6 +82,19 @@ class roles {
                include roles::ftp_upload
        }
 
+       if has_role('ssh.upload.d.o') {
+               include roles::ssh_upload
+       }
+
+       if has_role('git_master') {
+               include roles::git_master
+       }
+
+       if has_role('people') {
+               ssl::service { 'people.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+               onion::service { 'people.debian.org': port => 80, target_address => 'people.debian.org', target_port => 80, direct => true }
+       }
+
        if has_role('security_master') {
                include roles::security_master
                include roles::dakmaster
@@ -59,6 +104,10 @@ class roles {
                include roles::www_master
        }
 
+       if has_role('cgi.d.o') {
+               ssl::service { 'cgi.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
        if has_role('keyring') {
                include roles::keyring
        }
@@ -100,9 +149,6 @@ class roles {
        if has_role('dns_primary') {
                include named::primary
        }
-       if has_role('dns_secondary') {
-               include named::authoritative
-       }
 
        if has_role('weblog_destination') {
                include roles::weblog_destination
@@ -120,6 +166,10 @@ class roles {
                include roles::lists
        }
 
+       if has_role('list_search') {
+               include roles::listsearch
+       }
+
        if has_role('rtmaster') {
                include roles::rtmaster
        }
@@ -128,6 +178,18 @@ class roles {
                include roles::udd
        }
 
+       if has_role('sso') {
+               include roles::sso
+       }
+
+       if has_role('sso_rp') {
+               include roles::sso_rp
+       }
+
+       if has_role('tracker') {
+               include roles::tracker
+       }
+
        if has_role('buildd_master') {
                include roles::buildd_master
        }
@@ -147,4 +209,108 @@ class roles {
        if has_role('release') {
                include roles::release
        }
+
+       if has_role('rtc') {
+               include roles::rtc
+       }
+
+       if has_role('jenkins') {
+               include roles::jenkins
+       }
+
+       if has_role('keystone') {
+               include roles::keystone
+       }
+       if has_role('keystone_rabbitmq') {
+               include roles::keystone::rabbitmq
+       }
+
+       if has_role('memcached') {
+               include roles::memcached
+       }
+
+       if has_role('postgres_backup_server') {
+               include postgres::backup_server
+       }
+
+       if has_role('packages') {
+               ssl::service { 'packages.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
+       if has_role('qamaster') {
+               ssl::service { 'qa.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
+       if has_role('packagesqamaster') {
+               ssl::service { 'packages.qa.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
+       if has_role('gobby_debian_org') {
+               ssl::service { 'gobby.debian.org': notify  => Exec['service apache2 reload'], key => true, tlsaport => [443, 6523], }
+       }
+
+       if has_role('search_backend') {
+               include search_backend
+       }
+       if has_role('search_frontend') {
+               include search_frontend
+       }
+
+       if has_role('dgit_browse') {
+               include dgit_browse
+       }
+       if has_role('dgit_git') {
+               include dgit_git
+       }
+
+       if $::hostname in [lw01, lw02, lw03, lw04] {
+               include snapshot
+       }
+
+       if has_role('veyepar.debian.org') {
+               ssl::service { 'veyepar.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
+       if has_role('httpredir') {
+               include roles::httpredir
+       }
+
+       if has_role('debtags') {
+               include roles::debtags
+       }
+
+       if has_role('planet_search') {
+               ssl::service { 'planet-search.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
+       if has_role('i18n.d.o') {
+               ssl::service { 'i18n.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
+       if has_role('l10n.d.o') {
+               ssl::service { 'l10n.debian.org': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
+       if has_role('dedup.d.n') {
+               ssl::service { 'dedup.debian.net': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
+       if has_role('pet.d.n') {
+               ssl::service { 'pet.debian.net': notify  => Exec['service apache2 reload'], key => true, }
+               ssl::service { 'pet-devel.debian.net': notify  => Exec['service apache2 reload'], key => true, }
+       }
+
+       if has_role('ports-master') {
+               include roles::ports-master
+       }
+       if has_role('ports_mirror') {
+               include roles::ports_mirror
+       }
+
+       if $::hostname in [klecker] {
+               onion::service { 'ftp.debian.org': port => 80, target_address => '130.89.148.12', target_port => 81, }
+       }
+       if has_role('onionbalance') {
+               include onion::balance
+       }
 }