Move the Cache-Control setting for package archives to a macro
authorJulien Cristau <jcristau@debian.org>
Wed, 27 Jul 2016 17:19:33 +0000 (19:19 +0200)
committerJulien Cristau <jcristau@debian.org>
Wed, 27 Jul 2016 17:21:26 +0000 (19:21 +0200)
Signed-off-by: Julien Cristau <jcristau@debian.org>
modules/apache2/files/puppet-ftp-macros [new file with mode: 0644]
modules/apache2/manifests/init.pp
modules/roles/templates/apache-debug.mirrors.debian.org.erb
modules/roles/templates/apache-ftp.ports.debian.org.erb

diff --git a/modules/apache2/files/puppet-ftp-macros b/modules/apache2/files/puppet-ftp-macros
new file mode 100644 (file)
index 0000000..e3c9a55
--- /dev/null
@@ -0,0 +1,21 @@
+<IfModule mod_headers.c>
+  <IfModule mod_macro.c>
+    <Macro ftp-archive $root>
+      <Directory $root/pool>
+        <Files ?*>
+          Header set Cache-Control "public, max-age=2592000"
+        </Files>
+      </Directory>
+      <Directory $root/dists>
+        <Files ?*>
+          Header set Cache-Control "public, max-age=120"
+        </Files>
+      </Directory>
+      <DirectoryMatch "^$root/dists/.*/by-hash">
+        <Files ?*>
+          Header set Cache-Control "public, max-age=2592000"
+        </Files>
+      </DirectoryMatch>
+    </Macro>
+  </IfModule>
+</IfModule>
index b8e76ad..a2429eb 100644 (file)
@@ -87,6 +87,10 @@ class apache2 {
                source => 'puppet:///modules/apache2/puppet-ssl-macros',
        }
 
+       apache2::config { 'puppet-ftp-macros':
+               source => 'puppet:///modules/apache2/puppet-ftp-macros',
+       }
+
        apache2::config { 'puppet-config':
                content => template('apache2/puppet-config.erb'),
        }
index 7a5a592..51c4545 100644 (file)
                 Options +Indexes
                 Options +FollowSymLinks
         </Directory>
-        <Directory /srv/mirrors/debian-debug/pool>
-                <Files ?*>
-                        Header set Cache-Control "public, max-age=2592000"
-                </Files>
-        </Directory>
-        <Directory /srv/mirrors/debian-debug/dists>
-                <Files ?*>
-                        Header set Cache-Control "public, max-age=120"
-                </Files>
-        </Directory>
-        <DirectoryMatch "^/srv/mirrors/debian-debug/dists/.*/by-hash">
-                <Files ?*>
-                        Header set Cache-Control "public, max-age=2592000"
-                </Files>
-        </DirectoryMatch>
-
+        Use ftp-archive /srv/mirrors/debian-debug
 </VirtualHost>
-
-
index c9c88af..42c3fb2 100644 (file)
                 Options +Indexes
                 Options +FollowSymLinks
         </Directory>
-        <Directory /srv/mirrors/debian-ports/pool>
-                <Files ?*>
-                        Header set Cache-Control "public, max-age=2592000"
-                </Files>
-        </Directory>
-        <Directory /srv/mirrors/debian-ports/dists>
-                <Files ?*>
-                        Header set Cache-Control "public, max-age=120"
-                </Files>
-        </Directory>
-        <DirectoryMatch "^/srv/mirrors/debian-ports/dists/.*/by-hash">
-                <Files ?*>
-                        Header set Cache-Control "public, max-age=2592000"
-                </Files>
-        </DirectoryMatch>
+        Use ftp-archive /srv/mirrors/debian-ports
 
         Alias /debian-ports-cd /srv/mirrors/debian-ports-cd
         <Directory /srv/mirrors/debian-ports-cd>
@@ -45,5 +31,3 @@
                 Options +FollowSymLinks
         </Directory>
 </VirtualHost>
-
-