From 0f978b5d766ecb41aaabd0042c090138da96c04a Mon Sep 17 00:00:00 2001 From: Peter Palfrader Date: Fri, 29 Jul 2016 23:22:54 +0000 Subject: [PATCH] and onions for ftp.ports.d.o and debug.mirrors.d.o --- hieradata/common.yaml | 6 ++++++ modules/roles/manifests/debug_mirror.pp | 17 +++++++++++++++++ modules/roles/manifests/onionbalance.pp | 2 ++ modules/roles/manifests/ports_mirror.pp | 17 +++++++++++++++++ .../apache-debug.mirrors.debian.org.erb | 3 +++ .../templates/apache-ftp.ports.debian.org.erb | 4 +++- 6 files changed, 48 insertions(+), 1 deletion(-) diff --git a/hieradata/common.yaml b/hieradata/common.yaml index 6c154c928..a1dc93dfc 100644 --- a/hieradata/common.yaml +++ b/hieradata/common.yaml @@ -213,9 +213,15 @@ roles: debug_mirror: - klecker.debian.org - mirror-isc.debian.org + debug_mirror_onion: + - klecker.debian.org + - mirror-isc.debian.org ports_mirror: - klecker.debian.org - mirror-isc.debian.org + ports_mirror_onion: + - klecker.debian.org + - mirror-isc.debian.org planet_search: - philp.debian.org i18n.d.o: diff --git a/modules/roles/manifests/debug_mirror.pp b/modules/roles/manifests/debug_mirror.pp index da70581fc..94c73a577 100644 --- a/modules/roles/manifests/debug_mirror.pp +++ b/modules/roles/manifests/debug_mirror.pp @@ -4,9 +4,26 @@ class roles::debug_mirror { mirror-isc => '149.20.20.22:80 [2001:4f8:8:36::1deb:22]:80', default => '*:80', } + $onion_v4_addr = $::hostname ? { + klecker => '130.89.148.14', + mirror-isc => '149.20.20.22', + 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('static_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, + } + } } diff --git a/modules/roles/manifests/onionbalance.pp b/modules/roles/manifests/onionbalance.pp index 89352115d..ec870b4b2 100644 --- a/modules/roles/manifests/onionbalance.pp +++ b/modules/roles/manifests/onionbalance.pp @@ -45,4 +45,6 @@ class roles::onionbalance { # non-static.d.o onion::balance_service { 'security.debian.org': } + onion::balance_service { 'debug.mirrors.debian.org': } + onion::balance_service { 'ftp.ports.debian.org': } } diff --git a/modules/roles/manifests/ports_mirror.pp b/modules/roles/manifests/ports_mirror.pp index ff0d6014e..31cf1b568 100644 --- a/modules/roles/manifests/ports_mirror.pp +++ b/modules/roles/manifests/ports_mirror.pp @@ -4,9 +4,26 @@ class roles::ports_mirror { mirror-isc => '149.20.20.22:80 [2001:4f8:8:36::1deb:22]:80', default => '*:80', } + $onion_v4_addr = $::hostname ? { + klecker => '130.89.148.14', + mirror-isc => '149.20.20.22', + default => undef, + } apache2::site { '010-ftp.ports.debian.org': site => 'ftp.ports.debian.org', content => template('roles/apache-ftp.ports.debian.org.erb'), } + + if has_role('static_mirror_onion') { + if ! $onion_v4_addr { + fail("Do not have an onion_v4_addr set for $::hostname.") + } + + onion::service { 'ftp.ports.debian.org': + port => 80, + target_port => 80, + target_address => $onion_v4_addr, + } + } } diff --git a/modules/roles/templates/apache-debug.mirrors.debian.org.erb b/modules/roles/templates/apache-debug.mirrors.debian.org.erb index 51c4545d4..5d2ac23eb 100644 --- a/modules/roles/templates/apache-debug.mirrors.debian.org.erb +++ b/modules/roles/templates/apache-debug.mirrors.debian.org.erb @@ -6,6 +6,9 @@ > ServerAdmin debian-admin@debian.org ServerName debug.mirrors.debian.org + <% if scope.function_onion_global_service_hostname(['debug.mirrors.debian.org']) -%> + ServerAlias <%= scope.function_onion_global_service_hostname(['debug.mirrors.debian.org']) %> + <% end %> RedirectMatch "^/$" /debian-debug/ Alias /debian-debug /srv/mirrors/debian-debug diff --git a/modules/roles/templates/apache-ftp.ports.debian.org.erb b/modules/roles/templates/apache-ftp.ports.debian.org.erb index 42c3fb24d..5a060ce20 100644 --- a/modules/roles/templates/apache-ftp.ports.debian.org.erb +++ b/modules/roles/templates/apache-ftp.ports.debian.org.erb @@ -6,7 +6,9 @@ > ServerAdmin debian-admin@debian.org ServerName ftp.ports.debian.org - + <% if scope.function_onion_global_service_hostname(['ftp.ports.debian.org']) -%> + ServerAlias <%= scope.function_onion_global_service_hostname(['ftp.ports.debian.org']) %> + <% end %> ErrorLog /var/log/apache2/ftp.ports.debian.org-error.log LogLevel warn -- 2.20.1