From 67b91c1606ed23cc1c00c8c569e7338ba9802a05 Mon Sep 17 00:00:00 2001
From: Jeremy Stanley <fungi@yuggoth.org>
Date: Sat, 20 Jul 2013 20:33:30 +0000
Subject: [PATCH] Serve IRC log files as MIME type text/plain.

* modules/meetbot/manifests/site.pp: Specify a nondefault vhost
template.

* modules/meetbot/templates/vhost.erb: New file, similar in content
to the default puppetlabs-apache vhost template but forcing MIME
type text/plain and a default encoding of UTF-8 for files ending in
a .log suffix.

Change-Id: Ief0253c2baac32b126472d0f97f0aa503adbbd7f
---
 modules/meetbot/manifests/site.pp   |  1 +
 modules/meetbot/templates/vhost.erb | 29 +++++++++++++++++++++++++++++
 2 files changed, 30 insertions(+)
 create mode 100644 modules/meetbot/templates/vhost.erb

diff --git a/modules/meetbot/manifests/site.pp b/modules/meetbot/manifests/site.pp
index d032965a95..ff4fa088c5 100644
--- a/modules/meetbot/manifests/site.pp
+++ b/modules/meetbot/manifests/site.pp
@@ -15,6 +15,7 @@ define meetbot::site(
     port     => 80,
     docroot  => "/srv/meetbot-${name}",
     priority => '50',
+    template => 'meetbot/vhost.erb',
   }
 
   file { $varlib:
diff --git a/modules/meetbot/templates/vhost.erb b/modules/meetbot/templates/vhost.erb
new file mode 100644
index 0000000000..a137d57ad7
--- /dev/null
+++ b/modules/meetbot/templates/vhost.erb
@@ -0,0 +1,29 @@
+# ************************************
+# Managed by Puppet
+# ************************************
+
+NameVirtualHost <%= vhost_name %>:<%= port %>
+<VirtualHost <%= vhost_name %>:<%= port %>>
+  ServerName <%= srvname %>
+<% if serveraliases.is_a? Array -%>
+<% serveraliases.each do |name| -%><%= " ServerAlias #{name}\n" %><% end -%>
+<% elsif serveraliases != '' -%>
+<%= " ServerAlias #{serveraliases}" %>
+<% end -%>
+  DocumentRoot <%= docroot %>
+  <FilesMatch \.log$>
+    ForceType text/plain
+    AddDefaultCharset UTF-8
+  </FilesMatch>
+  <Directory <%= docroot %>>
+    Options <%= options %>
+    AllowOverride None
+    Order allow,deny
+    allow from all
+  </Directory>
+
+  ErrorLog /var/log/apache2/<%= name %>_error.log
+  LogLevel warn
+  CustomLog /var/log/apache2/<%= name %>_access.log combined
+  ServerSignature Off
+</VirtualHost>