1 class roles::static_mirror {
3 include roles::static_source
5 package { 'libapache2-mod-macro': ensure => installed, }
6 package { 'libapache2-mod-geoip': ensure => installed, }
7 package { 'geoip-database': ensure => installed, }
9 apache2::module { 'macro': require => Package['libapache2-mod-macro']; }
10 apache2::module { 'rewrite': }
11 apache2::module { 'expires': }
12 apache2::module { 'geoip': require => [Package['libapache2-mod-geoip'], Package['geoip-database']]; }
14 file { '/usr/local/bin/static-mirror-run':
15 source => 'puppet:///modules/roles/static-mirroring/static-mirror-run',
19 file { '/srv/static.debian.org':
26 file { '/etc/cron.d/puppet-static-mirror':
27 content => "PATH=/usr/local/bin:/usr/bin:/bin\n@reboot staticsync sleep 60; awk '!/^ *(#|$)/ {print \$1, \$2}' /etc/static-components.conf | while read master component; do static-mirror-run --one-stage /srv/static.debian.org/mirrors/\$component \"\$master:\$component/-live-\" > /dev/null; done\n",
30 $vhost_listen = $::hostname ? {
31 klecker => '130.89.148.14:80 [2001:610:1908:b000::148:14]:80',
35 apache2::config { "local-static-vhost.conf":
36 content => template('roles/static-mirroring/static-vhost.conf.erb'),
39 apache2::site { '010-planet.debian.org':
40 site => 'planet.debian.org',
41 content => template('roles/static-mirroring/vhost/planet.debian.org.erb'),
44 apache2::site { '010-static-vhosts-simple':
45 site => "static-vhosts-simple",
46 content => template('roles/static-mirroring/vhost/static-vhosts-simple.erb'),
49 $wwwdo_document_root = '/srv/static.debian.org/mirrors/www.debian.org/cur'
50 apache2::site { '010-www.debian.org':
51 site => 'www.debian.org',
52 content => template('roles/apache-www.debian.org.erb'),