b43d66ac38a7c9863e36046ebced1addee5a1c0b
[mirror/dsa-puppet.git] / modules / roles / manifests / debug_mirror.pp
1 class roles::debug_mirror {
2         include roles::archvsync_base
3
4         $mirror_basedir_prefix = hiera('role_config__mirrors.mirror_basedir_prefix')
5         $archive_root = "${mirror_basedir_prefix}debian-debug"
6
7         $vhost_listen = $::hostname ? {
8                 klecker    => '130.89.148.14:80 [2001:610:1908:b000::148:14]:80 [2001:67c:2564:a119::148:14]:80',
9                 mirror-isc => '149.20.4.15:80 [2001:4f8:1:c::15]:80',
10                 mirror-conova => '217.196.149.232:80 [2a02:16a8:dc41:100::232]:80',
11                 mirror-accumu => '*:80',
12                 default => '*:80',
13         }
14         $onion_v4_addr = $::hostname ? {
15                 klecker    => '130.89.148.14',
16                 mirror-isc => '149.20.4.15',
17                 mirror-accumu => '130.242.6.199',
18                 default    => undef,
19         }
20
21         apache2::site { '010-debug.mirrors.debian.org':
22                 site   => 'debug.mirrors.debian.org',
23                 content => template('roles/apache-debug.mirrors.debian.org.erb'),
24         }
25
26         if has_role('debug_mirror_onion') {
27                 if ! $onion_v4_addr {
28                         fail("Do not have an onion_v4_addr set for $::hostname.")
29                 }
30
31                 onion::service { 'debug.mirrors.debian.org':
32                         port => 80,
33                         target_port => 80,
34                         target_address => $onion_v4_addr,
35                 }
36         }
37
38         roles::mirror_health { 'debug':
39                 check_hosts     => hiera('roles.debug_mirror'),
40                 check_service   => 'debug',
41                 url             => 'http://debug.backend.mirrors.debian.org/debian-debug/dists/sid-debug/Release',
42                 health_url      => 'http://debug.backend.mirrors.debian.org/_health',
43         }
44 }