bind address for security, debug and debian mirror on conova
[mirror/dsa-puppet.git] / modules / roles / manifests / debian_mirror.pp
1 class roles::debian_mirror {
2         include roles::archvsync_base
3
4         $vhost_listen = $::hostname ? {
5                 klecker    => '130.89.148.12:80 2001:610:1908:b000::148:12:80',
6                 mirror-isc => '149.20.4.15:80 [2001:4f8:1:c::15]:80',
7                 mirror-conova => '217.196.149.232:80 [2a02:16a8:dc41:100::232]:80',
8                 default => '*:80',
9         }
10         $onion_v4_addr = $::hostname ? {
11                 bilbao     => '5.153.231.37',
12                 klecker    => '130.89.148.12',
13                 mirror-isc => '149.20.4.15',
14                 default    => undef,
15         }
16         $archive_root = $::hostname ? {
17                 default    => '/srv/mirrors/debian',
18         }
19
20         apache2::site { '010-ftp.debian.org':
21                 site   => 'ftp.debian.org',
22                 content => template('roles/apache-ftp.debian.org.erb'),
23         }
24
25         if has_role('debian_mirror_onion') {
26                 if ! $onion_v4_addr {
27                         fail("Do not have an onion_v4_addr set for $::hostname.")
28                 }
29
30                 onion::service { 'ftp.debian.org':
31                         port => 80,
32                         target_port => 80,
33                         target_address => $onion_v4_addr,
34                 }
35         }
36 }