X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Fstatic_mirror.pp;h=fca65b443dbbf2b26adb10b0174234aac00478da;hb=1517f5e59bda6b8e85df9efad0a52f91afec5e68;hp=ca9fea47359dc986c92a54e686f86e05af11ec57;hpb=cc03b421ddfcfc5e9a9e6447fa87cfd9a7e251fc;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/static_mirror.pp b/modules/roles/manifests/static_mirror.pp index ca9fea473..fca65b443 100644 --- a/modules/roles/manifests/static_mirror.pp +++ b/modules/roles/manifests/static_mirror.pp @@ -1,50 +1,65 @@ -class roles::static_mirror inherits roles::static_base { - file { - '/etc/ssh/userkeys/staticsync': - content => template('roles/static-mirror-authorized_keys.erb'), - ; - '/usr/local/bin/static-mirror-run': - source => "puppet:///modules/roles/static-mirroring/static-mirror-run", - mode => 555, - ; - '/usr/local/bin/static-mirror-ssh-wrap': - source => "puppet:///modules/roles/static-mirroring/static-mirror-ssh-wrap", - mode => 555, - ; - } - - file { - "/srv/static.debian.org": - ensure => directory, - owner => staticsync, - group => staticsync, - mode => '02755' - ; - "/etc/cron.d/puppet-static-mirror": - content => "PATH=/usr/local/bin:/usr/bin:/bin\n@reboot staticsync sleep 60; static-mirror-run --one-stage /srv/static.debian.org bizet.debian.org:-live- > /dev/null\n", - ; - - #"/etc/apache2/sites-available/dist.torproject.org": - # source => "puppet:///modules/roles/static-mirroring/vhost/dist.torproject.org", - # require => Package["apache2"], - # notify => Exec["reload-apache2"], - # ; - #"/etc/apache2/sites-available/www.torproject.org": - # source => "puppet:///modules/roles/static-mirroring/vhost/www.torproject.org", - # require => Package["apache2"], - # notify => Exec["reload-apache2"], - # ; - } - - #apache2::activate_apache_site { - # "10-dist.torproject.org": - # site => "dist.torproject.org", - # require => File['/etc/ssl/certs/apache-wildcard.torproject.org.pem']; - # "10-www.torproject.org": - # site => "www.torproject.org", - # require => File['/etc/ssl/certs/apache-wildcard.torproject.org.pem']; - #} +class roles::static_mirror { + + include roles::static_source + include apache2::cache + + package { 'libapache2-mod-geoip': ensure => installed, } + package { 'geoip-database': ensure => installed, } + + apache2::module { 'rewrite': } + apache2::module { 'include': } + apache2::module { 'ssl': } + apache2::module { 'geoip': require => [Package['libapache2-mod-geoip'], Package['geoip-database']]; } + + file { '/usr/local/bin/static-mirror-run': + source => 'puppet:///modules/roles/static-mirroring/static-mirror-run', + mode => '0555', + } + + file { '/srv/static.debian.org': + ensure => directory, + owner => staticsync, + group => staticsync, + mode => '02755' + } + + file { '/etc/cron.d/puppet-static-mirror': + 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", + } + + $vhost_listen = $::hostname ? { + klecker => '130.89.148.14:80 [2001:610:1908:b000::148:14]:80', + default => '*:80', + } + $vhost_listen_443 = $::hostname ? { + klecker => '130.89.148.14:443 [2001:610:1908:b000::148:14]:443', + default => '*:443', + } + + apache2::config { 'local-static-vhost.conf': + content => template('roles/static-mirroring/static-vhost.conf.erb'), + } + + apache2::site { '010-planet.debian.org': + site => 'planet.debian.org', + content => template('roles/static-mirroring/vhost/planet.debian.org.erb'), + } + + apache2::site { '010-static-vhosts-simple': + site => 'static-vhosts-simple', + content => template('roles/static-mirroring/vhost/static-vhosts-simple.erb'), + } + + $wwwdo_document_root = '/srv/static.debian.org/mirrors/www.debian.org/cur' + apache2::site { '010-www.debian.org': + site => 'www.debian.org', + content => template('roles/apache-www.debian.org.erb'), + } + + ssl::service { 'dsa.debian.org': + notify => Service['apache2'], + } + ssl::service { 'www.debian.org': + notify => Service['apache2'], + } } -# vim:set et: -# vim:set sts=4 ts=4: -# vim:set shiftwidth=4: