Add health check on debian-debug archive backends
[mirror/dsa-puppet.git] / modules / roles / manifests / debug_mirror.pp
index da70581..b43d66a 100644 (file)
@@ -1,12 +1,44 @@
 class roles::debug_mirror {
+       include roles::archvsync_base
+
+       $mirror_basedir_prefix = hiera('role_config__mirrors.mirror_basedir_prefix')
+       $archive_root = "${mirror_basedir_prefix}debian-debug"
+
        $vhost_listen = $::hostname ? {
-               klecker    => '130.89.148.14:80 [2001:610:1908:b000::148:14]:80',
-               mirror-isc => '149.20.20.22:80 [2001:4f8:8:36::1deb:22]:80',
+               klecker    => '130.89.148.14:80 [2001:610:1908:b000::148:14]:80 [2001:67c:2564:a119::148:14]:80',
+               mirror-isc => '149.20.4.15:80 [2001:4f8:1:c::15]:80',
+               mirror-conova => '217.196.149.232:80 [2a02:16a8:dc41:100::232]:80',
+               mirror-accumu => '*:80',
                default => '*:80',
        }
+       $onion_v4_addr = $::hostname ? {
+               klecker    => '130.89.148.14',
+               mirror-isc => '149.20.4.15',
+               mirror-accumu => '130.242.6.199',
+               default    => undef,
+       }
 
        apache2::site { '010-debug.mirrors.debian.org':
                site   => 'debug.mirrors.debian.org',
                content => template('roles/apache-debug.mirrors.debian.org.erb'),
        }
+
+       if has_role('debug_mirror_onion') {
+               if ! $onion_v4_addr {
+                       fail("Do not have an onion_v4_addr set for $::hostname.")
+               }
+
+               onion::service { 'debug.mirrors.debian.org':
+                       port => 80,
+                       target_port => 80,
+                       target_address => $onion_v4_addr,
+               }
+       }
+
+       roles::mirror_health { 'debug':
+               check_hosts     => hiera('roles.debug_mirror'),
+               check_service   => 'debug',
+               url             => 'http://debug.backend.mirrors.debian.org/debian-debug/dists/sid-debug/Release',
+               health_url      => 'http://debug.backend.mirrors.debian.org/_health',
+       }
 }