From 35721a3f352531f53264fb08f2d4a7f7bab11712 Mon Sep 17 00:00:00 2001
From: James Turnbull <james@puppetlabs.com>
Date: Wed, 1 Sep 2010 18:01:04 -0400
Subject: [PATCH] Initial commit

---
 Modulefile                                    |   2 +
 files/httpd                                   |  24 +++++++++
 files/test.vhost                              |  18 +++++++
 lib/puppet/provider/a2mod/a2mod.rb            |  21 ++++++++
 lib/puppet/type/a2mod.rb                      |  12 +++++
 manifests/dev.pp                              |  18 +++++++
 manifests/init.pp                             |  44 +++++++++++++++
 manifests/params.pp                           |  47 ++++++++++++++++
 manifests/php.pp                              |  22 ++++++++
 manifests/ssl.pp                              |  29 ++++++++++
 manifests/vhost.pp                            |  38 +++++++++++++
 pkg/puppetlabs-apache-0.0.2.tar.gz            | Bin 0 -> 4010 bytes
 pkg/puppetlabs-apache-0.0.2/Modulefile        |   2 +
 pkg/puppetlabs-apache-0.0.2/files/httpd       |  24 +++++++++
 pkg/puppetlabs-apache-0.0.2/files/test.vhost  |  18 +++++++
 .../lib/puppet/provider/a2mod/a2mod.rb        |  21 ++++++++
 .../lib/puppet/type/a2mod.rb                  |  12 +++++
 pkg/puppetlabs-apache-0.0.2/manifests/dev.pp  |  18 +++++++
 pkg/puppetlabs-apache-0.0.2/manifests/init.pp |  47 ++++++++++++++++
 .../manifests/params.pp                       |  44 +++++++++++++++
 pkg/puppetlabs-apache-0.0.2/manifests/php.pp  |  22 ++++++++
 pkg/puppetlabs-apache-0.0.2/manifests/ssl.pp  |  29 ++++++++++
 .../manifests/vhost.pp                        |  43 +++++++++++++++
 pkg/puppetlabs-apache-0.0.2/metadata.json     |  51 ++++++++++++++++++
 .../templates/vhost-default.conf.erb          |  20 +++++++
 pkg/puppetlabs-apache-0.0.2/tests/apache.pp   |   1 +
 pkg/puppetlabs-apache-0.0.2/tests/dev.pp      |   1 +
 pkg/puppetlabs-apache-0.0.2/tests/init.pp     |   1 +
 pkg/puppetlabs-apache-0.0.2/tests/php.pp      |   1 +
 pkg/puppetlabs-apache-0.0.2/tests/ssl.pp      |   1 +
 pkg/puppetlabs-apache-0.0.2/tests/vhost.pp    |   2 +
 pkg/puppetlabs-apache-0.0.3.tar.gz            | Bin 0 -> 3929 bytes
 pkg/puppetlabs-apache-0.0.3/Modulefile        |   2 +
 pkg/puppetlabs-apache-0.0.3/files/httpd       |  24 +++++++++
 pkg/puppetlabs-apache-0.0.3/files/test.vhost  |  18 +++++++
 .../lib/puppet/provider/a2mod/a2mod.rb        |  21 ++++++++
 .../lib/puppet/type/a2mod.rb                  |  12 +++++
 pkg/puppetlabs-apache-0.0.3/manifests/dev.pp  |  18 +++++++
 pkg/puppetlabs-apache-0.0.3/manifests/init.pp |  44 +++++++++++++++
 .../manifests/params.pp                       |  47 ++++++++++++++++
 pkg/puppetlabs-apache-0.0.3/manifests/php.pp  |  22 ++++++++
 pkg/puppetlabs-apache-0.0.3/manifests/ssl.pp  |  29 ++++++++++
 .../manifests/vhost.pp                        |  38 +++++++++++++
 pkg/puppetlabs-apache-0.0.3/metadata.json     |  51 ++++++++++++++++++
 .../templates/vhost-default.conf.erb          |  25 +++++++++
 pkg/puppetlabs-apache-0.0.3/tests/apache.pp   |   1 +
 pkg/puppetlabs-apache-0.0.3/tests/dev.pp      |   1 +
 pkg/puppetlabs-apache-0.0.3/tests/init.pp     |   1 +
 pkg/puppetlabs-apache-0.0.3/tests/php.pp      |   1 +
 pkg/puppetlabs-apache-0.0.3/tests/ssl.pp      |   1 +
 pkg/puppetlabs-apache-0.0.3/tests/vhost.pp    |   2 +
 templates/vhost-default.conf.erb              |  25 +++++++++
 tests/apache.pp                               |   1 +
 tests/dev.pp                                  |   1 +
 tests/init.pp                                 |   1 +
 tests/php.pp                                  |   1 +
 tests/ssl.pp                                  |   1 +
 tests/vhost.pp                                |   2 +
 58 files changed, 1023 insertions(+)
 create mode 100644 Modulefile
 create mode 100644 files/httpd
 create mode 100644 files/test.vhost
 create mode 100644 lib/puppet/provider/a2mod/a2mod.rb
 create mode 100644 lib/puppet/type/a2mod.rb
 create mode 100644 manifests/dev.pp
 create mode 100644 manifests/init.pp
 create mode 100644 manifests/params.pp
 create mode 100644 manifests/php.pp
 create mode 100644 manifests/ssl.pp
 create mode 100644 manifests/vhost.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2.tar.gz
 create mode 100644 pkg/puppetlabs-apache-0.0.2/Modulefile
 create mode 100644 pkg/puppetlabs-apache-0.0.2/files/httpd
 create mode 100644 pkg/puppetlabs-apache-0.0.2/files/test.vhost
 create mode 100644 pkg/puppetlabs-apache-0.0.2/lib/puppet/provider/a2mod/a2mod.rb
 create mode 100644 pkg/puppetlabs-apache-0.0.2/lib/puppet/type/a2mod.rb
 create mode 100644 pkg/puppetlabs-apache-0.0.2/manifests/dev.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/manifests/init.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/manifests/params.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/manifests/php.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/manifests/ssl.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/manifests/vhost.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/metadata.json
 create mode 100644 pkg/puppetlabs-apache-0.0.2/templates/vhost-default.conf.erb
 create mode 100644 pkg/puppetlabs-apache-0.0.2/tests/apache.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/tests/dev.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/tests/init.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/tests/php.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/tests/ssl.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.2/tests/vhost.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3.tar.gz
 create mode 100644 pkg/puppetlabs-apache-0.0.3/Modulefile
 create mode 100644 pkg/puppetlabs-apache-0.0.3/files/httpd
 create mode 100644 pkg/puppetlabs-apache-0.0.3/files/test.vhost
 create mode 100644 pkg/puppetlabs-apache-0.0.3/lib/puppet/provider/a2mod/a2mod.rb
 create mode 100644 pkg/puppetlabs-apache-0.0.3/lib/puppet/type/a2mod.rb
 create mode 100644 pkg/puppetlabs-apache-0.0.3/manifests/dev.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/manifests/init.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/manifests/params.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/manifests/php.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/manifests/ssl.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/manifests/vhost.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/metadata.json
 create mode 100644 pkg/puppetlabs-apache-0.0.3/templates/vhost-default.conf.erb
 create mode 100644 pkg/puppetlabs-apache-0.0.3/tests/apache.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/tests/dev.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/tests/init.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/tests/php.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/tests/ssl.pp
 create mode 100644 pkg/puppetlabs-apache-0.0.3/tests/vhost.pp
 create mode 100644 templates/vhost-default.conf.erb
 create mode 100644 tests/apache.pp
 create mode 100644 tests/dev.pp
 create mode 100644 tests/init.pp
 create mode 100644 tests/php.pp
 create mode 100644 tests/ssl.pp
 create mode 100644 tests/vhost.pp

diff --git a/Modulefile b/Modulefile
new file mode 100644
index 0000000..5963ae3
--- /dev/null
+++ b/Modulefile
@@ -0,0 +1,2 @@
+name 'puppetlabs-apache'
+version '0.0.3'
diff --git a/files/httpd b/files/httpd
new file mode 100644
index 0000000..d65a8d4
--- /dev/null
+++ b/files/httpd
@@ -0,0 +1,24 @@
+# Configuration file for the httpd service.
+
+#
+# The default processing model (MPM) is the process-based
+# 'prefork' model.  A thread-based model, 'worker', is also
+# available, but does not work with some modules (such as PHP).
+# The service must be stopped before changing this variable.
+#
+#HTTPD=/usr/sbin/httpd.worker
+
+#
+# To pass additional options (for instance, -D definitions) to the
+# httpd binary at startup, set OPTIONS here.
+#
+#OPTIONS=
+#OPTIONS=-DDOWN
+
+#
+# By default, the httpd process is started in the C locale; to 
+# change the locale in which the server runs, the HTTPD_LANG
+# variable can be set.
+#
+#HTTPD_LANG=C
+export SHORTHOST=`hostname -s`
diff --git a/files/test.vhost b/files/test.vhost
new file mode 100644
index 0000000..ec9c811
--- /dev/null
+++ b/files/test.vhost
@@ -0,0 +1,18 @@
+#
+# Test vhost
+#
+NameVirtualHost *:80
+<VirtualHost *:80>
+  ServerName testvhost
+  DocumentRoot /tmp/testvhost
+  <Directory /tmp/testvhost> 
+    Options Indexes FollowSymLinks MultiViews
+    AllowOverride None
+    Order allow,deny
+    allow from all
+  </Directory>
+  ErrorLog /var/log/apache2/error.log
+  LogLevel warn
+  CustomLog /var/log/apache2/access.log combined
+  ServerSignature On
+</VirtualHost>
diff --git a/lib/puppet/provider/a2mod/a2mod.rb b/lib/puppet/provider/a2mod/a2mod.rb
new file mode 100644
index 0000000..a2fdd7c
--- /dev/null
+++ b/lib/puppet/provider/a2mod/a2mod.rb
@@ -0,0 +1,21 @@
+Puppet::Type.type(:a2mod).provide(:a2mod) do
+    desc "Manage Apache 2 modules on Debian and Ubuntu"
+ 
+    commands :encmd => "a2enmod"
+    commands :discmd => "a2dismod"
+ 
+    defaultfor :operatingsystem => [:debian, :ubuntu]
+
+    def create
+        encmd resource[:name]
+    end
+ 
+    def destroy
+        discmd resource[:name]
+    end
+ 
+    def exists?
+        mod= "/etc/apache2/mods-enabled/" + resource[:name] + ".load" 
+        File.exists?(mod)
+    end
+end
diff --git a/lib/puppet/type/a2mod.rb b/lib/puppet/type/a2mod.rb
new file mode 100644
index 0000000..0a1c8eb
--- /dev/null
+++ b/lib/puppet/type/a2mod.rb
@@ -0,0 +1,12 @@
+Puppet::Type.newtype(:a2mod) do
+    @doc = "Manage Apache 2 modules on Debian and Ubuntu"
+ 
+    ensurable
+
+    newparam(:name) do
+       desc "The name of the module to be managed"
+
+       isnamevar
+
+    end 
+end
diff --git a/manifests/dev.pp b/manifests/dev.pp
new file mode 100644
index 0000000..68f0ec9
--- /dev/null
+++ b/manifests/dev.pp
@@ -0,0 +1,18 @@
+# Class: apache::dev
+#
+# This class installs Apache development libraries
+#
+# Parameters:
+#
+# Actions:
+#   - Install Apache development libraries
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::dev {
+  include apache::params
+
+  package{$apache::params::apache_dev: ensure => installed}
+}
diff --git a/manifests/init.pp b/manifests/init.pp
new file mode 100644
index 0000000..5a54cc6
--- /dev/null
+++ b/manifests/init.pp
@@ -0,0 +1,44 @@
+# Class: apache
+#
+# This class installs Apache
+#
+# Parameters:
+#
+# Actions:
+#   - Install Apache
+#   - Manage Apache service
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache {
+  include apache::params
+  package { 'httpd': 
+    name   => $apache::params::apache_name,
+    ensure => present,
+  }
+  service { 'httpd':
+    name      => $apache::params::apache_name,
+    ensure    => running,
+    enable    => true,
+    subscribe => Package['httpd'],
+  }
+  #
+  # May want to purge all none realize modules using the resources resource type.
+  #
+  A2mod { require => Package['httpd'], notify => Service['httpd']}
+  @a2mod {
+   'rewrite' : ensure => present;
+   'headers' : ensure => present;
+   'expires' : ensure => present;
+  }
+  
+  
+  file { $apache::params::vdir:
+    ensure => directory,
+    recurse => true,
+    purge => true,
+    notify => Service['httpd'],
+  } 
+}
diff --git a/manifests/params.pp b/manifests/params.pp
new file mode 100644
index 0000000..46d1bc2
--- /dev/null
+++ b/manifests/params.pp
@@ -0,0 +1,47 @@
+# Class: apache::params
+#
+# This class manages Apache parameters
+#
+# Parameters:
+# - The $user that Apache runs as
+# - The $group that Apache runs as
+# - The $apache_name is the name of the package and service on the relevant distribution
+# - The $php_package is the name of the package that provided PHP
+# - The $ssl_package is the name of the Apache SSL package
+# - The $apache_dev is the name of the Apache development libraries package
+#
+# Actions:
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::params {
+
+  $user  = 'www-data'
+  $group = 'www-data'
+  
+  case $operatingsystem {
+    'centos', 'redhat', 'fedora': {
+       $apache_name = 'httpd'
+       $php_package = 'php'
+       $ssl_package = 'mod_ssl'
+       $apache_dev  = 'httpd-devel'
+       $vdir = '/etc/httpd/conf.d/'
+    }
+    'ubuntu', 'debian': {
+       $apache_name = 'apache2'
+       $php_package = 'libapache2-mod-php5'
+       $ssl_package = 'apache-ssl'
+       $apache_dev  = [ 'libaprutil1-dev', 'libapr1-dev', 'apache2-prefork-dev' ]
+       $vdir = '/etc/apache2/sites-enabled/'
+    }
+    default: {
+       $apache_name = 'apache2'
+       $php_package = 'libapache2-mod-php5'
+       $ssl_package = 'apache-ssl'
+       $apache_dev  = 'apache-dev'
+       $vdir = '/etc/apache2/sites-enabled/'
+    }
+  }
+}
diff --git a/manifests/php.pp b/manifests/php.pp
new file mode 100644
index 0000000..932eaee
--- /dev/null
+++ b/manifests/php.pp
@@ -0,0 +1,22 @@
+# Class: apache::php
+#
+# This class installs PHP for Apache
+#
+# Parameters:
+# - $php_package
+#
+# Actions:
+#   - Install Apache PHP package
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::php {
+
+  include apache::params
+
+  package { $apache::params::php_package:
+    ensure => present,
+  }
+}
diff --git a/manifests/ssl.pp b/manifests/ssl.pp
new file mode 100644
index 0000000..f18bb14
--- /dev/null
+++ b/manifests/ssl.pp
@@ -0,0 +1,29 @@
+# Class: apache::ssl
+#
+# This class installs Apache SSL capabilities
+#
+# Parameters:
+# - The $ssl_package name from the apache::params class
+#
+# Actions:
+#   - Install Apache SSL capabilities
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::ssl {
+
+  include apache
+  
+  case $operatingsystem {
+     'centos', 'fedora', 'redhat': {
+        package { $apache::params::ssl_package:
+           require => Package['httpd'],
+        }
+     }
+     'ubuntu', 'debian': {
+        a2mod { "ssl": ensure => present, }
+     }
+  }
+}
diff --git a/manifests/vhost.pp b/manifests/vhost.pp
new file mode 100644
index 0000000..6a61d23
--- /dev/null
+++ b/manifests/vhost.pp
@@ -0,0 +1,38 @@
+# Definition: apache::vhost
+#
+# This class installs Apache Virtual Hosts
+#
+# Parameters:
+# - The $port to configure the host on
+# - The $docroot provides the DocumentationRoot variable
+# - The $ssl option is set true or false to enable SSL for this Virtual Host
+# - The $template option specifies whether to use the default template or override
+# - The $priority of the site
+# - The $serveraliases of the site
+#
+# Actions:
+# - Install Apache Virtual Hosts
+#
+# Requires:
+# - The apache class
+#
+# Sample Usage:
+#  apache::vhost { 'site.name.fqdn':
+#    priority => '20',
+#    port => '80',
+#    docroot => '/path/to/docroot',
+#  }
+#
+define apache::vhost( $port, $docroot, $ssl=true, $template='apache/vhost-default.conf.erb', $priority, $serveraliases = '' ) {
+
+  include apache
+
+  file {"${apache::params::vdir}/${priority}-${name}":
+    content => template($template),
+    owner => 'root',
+    group => 'root',
+    mode => '777',
+    require => Package['httpd'],
+    notify => Service['httpd'],
+  }
+}
diff --git a/pkg/puppetlabs-apache-0.0.2.tar.gz b/pkg/puppetlabs-apache-0.0.2.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..029bdf2ae81f5da934c86a67b57d8e5027e1698f
GIT binary patch
literal 4010
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
QpkW>SAMcS6`T(E+04<Oon*aa+

literal 0
HcmV?d00001

diff --git a/pkg/puppetlabs-apache-0.0.2/Modulefile b/pkg/puppetlabs-apache-0.0.2/Modulefile
new file mode 100644
index 0000000..a4f885e
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/Modulefile
@@ -0,0 +1,2 @@
+name 'puppetlabs-apache'
+version '0.0.2'
diff --git a/pkg/puppetlabs-apache-0.0.2/files/httpd b/pkg/puppetlabs-apache-0.0.2/files/httpd
new file mode 100644
index 0000000..d65a8d4
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/files/httpd
@@ -0,0 +1,24 @@
+# Configuration file for the httpd service.
+
+#
+# The default processing model (MPM) is the process-based
+# 'prefork' model.  A thread-based model, 'worker', is also
+# available, but does not work with some modules (such as PHP).
+# The service must be stopped before changing this variable.
+#
+#HTTPD=/usr/sbin/httpd.worker
+
+#
+# To pass additional options (for instance, -D definitions) to the
+# httpd binary at startup, set OPTIONS here.
+#
+#OPTIONS=
+#OPTIONS=-DDOWN
+
+#
+# By default, the httpd process is started in the C locale; to 
+# change the locale in which the server runs, the HTTPD_LANG
+# variable can be set.
+#
+#HTTPD_LANG=C
+export SHORTHOST=`hostname -s`
diff --git a/pkg/puppetlabs-apache-0.0.2/files/test.vhost b/pkg/puppetlabs-apache-0.0.2/files/test.vhost
new file mode 100644
index 0000000..ec9c811
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/files/test.vhost
@@ -0,0 +1,18 @@
+#
+# Test vhost
+#
+NameVirtualHost *:80
+<VirtualHost *:80>
+  ServerName testvhost
+  DocumentRoot /tmp/testvhost
+  <Directory /tmp/testvhost> 
+    Options Indexes FollowSymLinks MultiViews
+    AllowOverride None
+    Order allow,deny
+    allow from all
+  </Directory>
+  ErrorLog /var/log/apache2/error.log
+  LogLevel warn
+  CustomLog /var/log/apache2/access.log combined
+  ServerSignature On
+</VirtualHost>
diff --git a/pkg/puppetlabs-apache-0.0.2/lib/puppet/provider/a2mod/a2mod.rb b/pkg/puppetlabs-apache-0.0.2/lib/puppet/provider/a2mod/a2mod.rb
new file mode 100644
index 0000000..a2fdd7c
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/lib/puppet/provider/a2mod/a2mod.rb
@@ -0,0 +1,21 @@
+Puppet::Type.type(:a2mod).provide(:a2mod) do
+    desc "Manage Apache 2 modules on Debian and Ubuntu"
+ 
+    commands :encmd => "a2enmod"
+    commands :discmd => "a2dismod"
+ 
+    defaultfor :operatingsystem => [:debian, :ubuntu]
+
+    def create
+        encmd resource[:name]
+    end
+ 
+    def destroy
+        discmd resource[:name]
+    end
+ 
+    def exists?
+        mod= "/etc/apache2/mods-enabled/" + resource[:name] + ".load" 
+        File.exists?(mod)
+    end
+end
diff --git a/pkg/puppetlabs-apache-0.0.2/lib/puppet/type/a2mod.rb b/pkg/puppetlabs-apache-0.0.2/lib/puppet/type/a2mod.rb
new file mode 100644
index 0000000..0a1c8eb
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/lib/puppet/type/a2mod.rb
@@ -0,0 +1,12 @@
+Puppet::Type.newtype(:a2mod) do
+    @doc = "Manage Apache 2 modules on Debian and Ubuntu"
+ 
+    ensurable
+
+    newparam(:name) do
+       desc "The name of the module to be managed"
+
+       isnamevar
+
+    end 
+end
diff --git a/pkg/puppetlabs-apache-0.0.2/manifests/dev.pp b/pkg/puppetlabs-apache-0.0.2/manifests/dev.pp
new file mode 100644
index 0000000..68f0ec9
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/manifests/dev.pp
@@ -0,0 +1,18 @@
+# Class: apache::dev
+#
+# This class installs Apache development libraries
+#
+# Parameters:
+#
+# Actions:
+#   - Install Apache development libraries
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::dev {
+  include apache::params
+
+  package{$apache::params::apache_dev: ensure => installed}
+}
diff --git a/pkg/puppetlabs-apache-0.0.2/manifests/init.pp b/pkg/puppetlabs-apache-0.0.2/manifests/init.pp
new file mode 100644
index 0000000..8dcdd11
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/manifests/init.pp
@@ -0,0 +1,47 @@
+# Class: apache
+#
+# This class installs Apache
+#
+# Parameters:
+#
+# Actions:
+#   - Install Apache
+#   - Manage Apache service
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache {
+  include apache::params
+  package { 'httpd': 
+    name   => $apache::params::apache_name,
+    ensure => present,
+  }
+  service { 'httpd':
+    name      => $apache::params::apache_name,
+    ensure    => running,
+    enable    => true,
+    subscribe => Package['httpd'],
+  }
+  #
+  # May want to purge all none realize modules using the resources resource type.
+  # A2mod resource type is broken.  Look into fixing it and moving it into apache.
+  #
+  A2mod { require => Package['httpd'], notify => Service['httpd']}
+  @a2mod {
+   'rewrite' : ensure => present;
+   'headers' : ensure => present;
+   'expires' : ensure => present;
+  }
+  $vdir = $operatingsystem? {
+    'ubuntu' => '/etc/apache2/sites-enabled/',
+    default => '/etc/httpd/conf.d',
+  }
+  file { $vdir:
+    ensure => directory,
+    recurse => true,
+    purge => true,
+    notify => Service['httpd'],
+  } 
+}
diff --git a/pkg/puppetlabs-apache-0.0.2/manifests/params.pp b/pkg/puppetlabs-apache-0.0.2/manifests/params.pp
new file mode 100644
index 0000000..d930572
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/manifests/params.pp
@@ -0,0 +1,44 @@
+# Class: apache::params
+#
+# This class manages Apache parameters
+#
+# Parameters:
+# - The $user that Apache runs as
+# - The $group that Apache runs as
+# - The $apache_name is the name of the package and service on the relevant distribution
+# - The $php_package is the name of the package that provided PHP
+# - The $ssl_package is the name of the Apache SSL package
+# - The $apache_dev is the name of the Apache development libraries package
+#
+# Actions:
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::params {
+
+  $user  = 'www-data'
+  $group = 'www-data'
+  
+  case $operatingsystem {
+    'centos', 'redhat', 'fedora': {
+       $apache_name = 'httpd'
+       $php_package = 'php'
+       $ssl_package = 'mod_ssl'
+       $apache_dev  = 'httpd-devel'
+    }
+    'ubuntu', 'debian': {
+       $apache_name = 'apache2'
+       $php_package = 'libapache2-mod-php5'
+       $ssl_package = 'apache-ssl'
+       $apache_dev  = [ 'libaprutil1-dev', 'libapr1-dev', 'apache2-prefork-dev' ]
+    }
+    default: {
+       $apache_name = 'apache2'
+       $php_package = 'libapache2-mod-php5'
+       $ssl_package = 'apache-ssl'
+       $apache_dev  = 'apache-dev'
+    }
+  }
+}
diff --git a/pkg/puppetlabs-apache-0.0.2/manifests/php.pp b/pkg/puppetlabs-apache-0.0.2/manifests/php.pp
new file mode 100644
index 0000000..932eaee
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/manifests/php.pp
@@ -0,0 +1,22 @@
+# Class: apache::php
+#
+# This class installs PHP for Apache
+#
+# Parameters:
+# - $php_package
+#
+# Actions:
+#   - Install Apache PHP package
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::php {
+
+  include apache::params
+
+  package { $apache::params::php_package:
+    ensure => present,
+  }
+}
diff --git a/pkg/puppetlabs-apache-0.0.2/manifests/ssl.pp b/pkg/puppetlabs-apache-0.0.2/manifests/ssl.pp
new file mode 100644
index 0000000..f18bb14
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/manifests/ssl.pp
@@ -0,0 +1,29 @@
+# Class: apache::ssl
+#
+# This class installs Apache SSL capabilities
+#
+# Parameters:
+# - The $ssl_package name from the apache::params class
+#
+# Actions:
+#   - Install Apache SSL capabilities
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::ssl {
+
+  include apache
+  
+  case $operatingsystem {
+     'centos', 'fedora', 'redhat': {
+        package { $apache::params::ssl_package:
+           require => Package['httpd'],
+        }
+     }
+     'ubuntu', 'debian': {
+        a2mod { "ssl": ensure => present, }
+     }
+  }
+}
diff --git a/pkg/puppetlabs-apache-0.0.2/manifests/vhost.pp b/pkg/puppetlabs-apache-0.0.2/manifests/vhost.pp
new file mode 100644
index 0000000..5af8fe2
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/manifests/vhost.pp
@@ -0,0 +1,43 @@
+# Definition: apache::vhost
+#
+# This class installs Apache Virtual Hosts
+#
+# Parameters:
+# - The $port to configure the host on
+# - The $docroot provides the DocumentationRoot variable
+# - The $ssl option is set true or false to enable SSL for this Virtual Host
+# - The $template option specifies whether to use the default template or override
+# - The $priority of the site
+# - The $serveraliases of the site
+#
+# Actions:
+# - Install Apache Virtual Hosts
+#
+# Requires:
+# - The apache class
+#
+# Sample Usage:
+#  apache::vhost { 'site.name.fqdn':
+#    priority => '20',
+#    port => '80',
+#    docroot => '/path/to/docroot',
+#  }
+#
+define apache::vhost( $port, $docroot, $ssl=true, $template='apache/vhost-default.conf.erb', $priority, $serveraliases = '' ) {
+
+  include apache
+
+  $vdir = $operatingsystem? {
+    /(ubuntu|debian)/ => '/etc/apache2/sites-enabled/',
+    default => '/etc/httpd/conf.d',
+  }
+
+  file {"${vdir}/${priority}-${name}":
+    content => template($template),
+    owner => 'root',
+    group => 'root',
+    mode => '777',
+    require => Package['httpd'],
+    notify => Service['httpd'],
+  }
+}
diff --git a/pkg/puppetlabs-apache-0.0.2/metadata.json b/pkg/puppetlabs-apache-0.0.2/metadata.json
new file mode 100644
index 0000000..407bde1
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/metadata.json
@@ -0,0 +1,51 @@
+{
+  "types": [
+    {
+      "parameters": [
+        {
+          "name": "name",
+          "doc": "The name of the module to be managed"
+        }
+      ],
+      "properties": [
+        {
+          "name": "ensure",
+          "doc": "The basic property that the resource should be in.  Valid values are ``present``, ``absent``."
+        }
+      ],
+      "name": "a2mod",
+      "providers": [
+        {
+          "name": "a2mod",
+          "doc": "Manage Apache 2 modules on Debian and Ubuntu  Required binaries: ``a2enmod``, ``a2dismod``.    Default for ``operatingsystem`` == ``debianubuntu``.  "
+        }
+      ],
+      "doc": "Manage Apache 2 modules on Debian and Ubuntu"
+    }
+  ],
+  "dependencies": [
+
+  ],
+  "checksums": {
+    "manifests/params.pp": "f137ab035e6cd5bdbbd50beeac4c68b0",
+    "tests/ssl.pp": "191912535199531fd631f911c6329e56",
+    "tests/vhost.pp": "1b91e03c8ef89a7ecb6793831ac18399",
+    "manifests/php.pp": "8a5ca4035b1c22892923f3fde55e3d5e",
+    "files/httpd": "295f5e924afe6f752d29327e73fe6d0a",
+    "tests/php.pp": "ce7bb9eef69d32b42a32ce32d9653625",
+    "lib/puppet/provider/a2mod/a2mod.rb": "18c5bb180b75a2375e95e07f88a94257",
+    "files/test.vhost": "0602022c19a7b6b289f218c7b93c1aea",
+    "manifests/ssl.pp": "11ed1861298c72cca3a706480bb0b67c",
+    "manifests/dev.pp": "bc54a5af648cb04b7b3bb0e3f7be6543",
+    "manifests/vhost.pp": "b43a4d6efb4563341efe8092677aac6f",
+    "tests/init.pp": "4eac4a7ef68499854c54a78879e25535",
+    "lib/puppet/type/a2mod.rb": "0e1b4843431413a10320ac1f6a055d15",
+    "tests/apache.pp": "4eac4a7ef68499854c54a78879e25535",
+    "tests/dev.pp": "4cf15c1fecea3ca86009f182b402c7ab",
+    "templates/vhost-default.conf.erb": "9055aed946e1111c30ab81fedac2c8b0",
+    "manifests/init.pp": "168dfe06fb9ad8d67a2effeea4477f57",
+    "Modulefile": "86f48ebf97e079cf0dc395881d87ecef"
+  },
+  "version": "0.0.2",
+  "name": "puppetlabs-apache"
+}
\ No newline at end of file
diff --git a/pkg/puppetlabs-apache-0.0.2/templates/vhost-default.conf.erb b/pkg/puppetlabs-apache-0.0.2/templates/vhost-default.conf.erb
new file mode 100644
index 0000000..3aaf945
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/templates/vhost-default.conf.erb
@@ -0,0 +1,20 @@
+NameVirtualHost *:<%= port %>
+<VirtualHost *:<%= port %>>
+  ServerName <%= name %>
+<%if serveraliases.is_a? Array -%>
+<% serveraliases.each do |name| -%><%= "  ServerAlias #{name}\n" %><% end -%>
+<% elsif serveraliases != '' -%>
+<%= "  ServerAlias #{serveraliases}" -%>
+<% end -%>
+  DocumentRoot <%= docroot %>
+  <Directory <%= docroot %>>
+    Options Indexes FollowSymLinks MultiViews
+    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 On
+</VirtualHost>
diff --git a/pkg/puppetlabs-apache-0.0.2/tests/apache.pp b/pkg/puppetlabs-apache-0.0.2/tests/apache.pp
new file mode 100644
index 0000000..b3f9f13
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/tests/apache.pp
@@ -0,0 +1 @@
+include apache
diff --git a/pkg/puppetlabs-apache-0.0.2/tests/dev.pp b/pkg/puppetlabs-apache-0.0.2/tests/dev.pp
new file mode 100644
index 0000000..805ad7e
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/tests/dev.pp
@@ -0,0 +1 @@
+include apache::dev
diff --git a/pkg/puppetlabs-apache-0.0.2/tests/init.pp b/pkg/puppetlabs-apache-0.0.2/tests/init.pp
new file mode 100644
index 0000000..b3f9f13
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/tests/init.pp
@@ -0,0 +1 @@
+include apache
diff --git a/pkg/puppetlabs-apache-0.0.2/tests/php.pp b/pkg/puppetlabs-apache-0.0.2/tests/php.pp
new file mode 100644
index 0000000..618e0eb
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/tests/php.pp
@@ -0,0 +1 @@
+include apache::php
diff --git a/pkg/puppetlabs-apache-0.0.2/tests/ssl.pp b/pkg/puppetlabs-apache-0.0.2/tests/ssl.pp
new file mode 100644
index 0000000..cf2dacf
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/tests/ssl.pp
@@ -0,0 +1 @@
+include apache::ssl
diff --git a/pkg/puppetlabs-apache-0.0.2/tests/vhost.pp b/pkg/puppetlabs-apache-0.0.2/tests/vhost.pp
new file mode 100644
index 0000000..c916596
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.2/tests/vhost.pp
@@ -0,0 +1,2 @@
+include apache
+apache::vhost { 'test.vhost': source => 'puppet:///modules/apache/test.vhost' }
diff --git a/pkg/puppetlabs-apache-0.0.3.tar.gz b/pkg/puppetlabs-apache-0.0.3.tar.gz
new file mode 100644
index 0000000000000000000000000000000000000000..8282cc79b0c4f588362a46f6fa055abd32f877d5
GIT binary patch
literal 3929
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

literal 0
HcmV?d00001

diff --git a/pkg/puppetlabs-apache-0.0.3/Modulefile b/pkg/puppetlabs-apache-0.0.3/Modulefile
new file mode 100644
index 0000000..5963ae3
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/Modulefile
@@ -0,0 +1,2 @@
+name 'puppetlabs-apache'
+version '0.0.3'
diff --git a/pkg/puppetlabs-apache-0.0.3/files/httpd b/pkg/puppetlabs-apache-0.0.3/files/httpd
new file mode 100644
index 0000000..d65a8d4
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/files/httpd
@@ -0,0 +1,24 @@
+# Configuration file for the httpd service.
+
+#
+# The default processing model (MPM) is the process-based
+# 'prefork' model.  A thread-based model, 'worker', is also
+# available, but does not work with some modules (such as PHP).
+# The service must be stopped before changing this variable.
+#
+#HTTPD=/usr/sbin/httpd.worker
+
+#
+# To pass additional options (for instance, -D definitions) to the
+# httpd binary at startup, set OPTIONS here.
+#
+#OPTIONS=
+#OPTIONS=-DDOWN
+
+#
+# By default, the httpd process is started in the C locale; to 
+# change the locale in which the server runs, the HTTPD_LANG
+# variable can be set.
+#
+#HTTPD_LANG=C
+export SHORTHOST=`hostname -s`
diff --git a/pkg/puppetlabs-apache-0.0.3/files/test.vhost b/pkg/puppetlabs-apache-0.0.3/files/test.vhost
new file mode 100644
index 0000000..ec9c811
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/files/test.vhost
@@ -0,0 +1,18 @@
+#
+# Test vhost
+#
+NameVirtualHost *:80
+<VirtualHost *:80>
+  ServerName testvhost
+  DocumentRoot /tmp/testvhost
+  <Directory /tmp/testvhost> 
+    Options Indexes FollowSymLinks MultiViews
+    AllowOverride None
+    Order allow,deny
+    allow from all
+  </Directory>
+  ErrorLog /var/log/apache2/error.log
+  LogLevel warn
+  CustomLog /var/log/apache2/access.log combined
+  ServerSignature On
+</VirtualHost>
diff --git a/pkg/puppetlabs-apache-0.0.3/lib/puppet/provider/a2mod/a2mod.rb b/pkg/puppetlabs-apache-0.0.3/lib/puppet/provider/a2mod/a2mod.rb
new file mode 100644
index 0000000..a2fdd7c
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/lib/puppet/provider/a2mod/a2mod.rb
@@ -0,0 +1,21 @@
+Puppet::Type.type(:a2mod).provide(:a2mod) do
+    desc "Manage Apache 2 modules on Debian and Ubuntu"
+ 
+    commands :encmd => "a2enmod"
+    commands :discmd => "a2dismod"
+ 
+    defaultfor :operatingsystem => [:debian, :ubuntu]
+
+    def create
+        encmd resource[:name]
+    end
+ 
+    def destroy
+        discmd resource[:name]
+    end
+ 
+    def exists?
+        mod= "/etc/apache2/mods-enabled/" + resource[:name] + ".load" 
+        File.exists?(mod)
+    end
+end
diff --git a/pkg/puppetlabs-apache-0.0.3/lib/puppet/type/a2mod.rb b/pkg/puppetlabs-apache-0.0.3/lib/puppet/type/a2mod.rb
new file mode 100644
index 0000000..0a1c8eb
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/lib/puppet/type/a2mod.rb
@@ -0,0 +1,12 @@
+Puppet::Type.newtype(:a2mod) do
+    @doc = "Manage Apache 2 modules on Debian and Ubuntu"
+ 
+    ensurable
+
+    newparam(:name) do
+       desc "The name of the module to be managed"
+
+       isnamevar
+
+    end 
+end
diff --git a/pkg/puppetlabs-apache-0.0.3/manifests/dev.pp b/pkg/puppetlabs-apache-0.0.3/manifests/dev.pp
new file mode 100644
index 0000000..68f0ec9
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/manifests/dev.pp
@@ -0,0 +1,18 @@
+# Class: apache::dev
+#
+# This class installs Apache development libraries
+#
+# Parameters:
+#
+# Actions:
+#   - Install Apache development libraries
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::dev {
+  include apache::params
+
+  package{$apache::params::apache_dev: ensure => installed}
+}
diff --git a/pkg/puppetlabs-apache-0.0.3/manifests/init.pp b/pkg/puppetlabs-apache-0.0.3/manifests/init.pp
new file mode 100644
index 0000000..5a54cc6
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/manifests/init.pp
@@ -0,0 +1,44 @@
+# Class: apache
+#
+# This class installs Apache
+#
+# Parameters:
+#
+# Actions:
+#   - Install Apache
+#   - Manage Apache service
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache {
+  include apache::params
+  package { 'httpd': 
+    name   => $apache::params::apache_name,
+    ensure => present,
+  }
+  service { 'httpd':
+    name      => $apache::params::apache_name,
+    ensure    => running,
+    enable    => true,
+    subscribe => Package['httpd'],
+  }
+  #
+  # May want to purge all none realize modules using the resources resource type.
+  #
+  A2mod { require => Package['httpd'], notify => Service['httpd']}
+  @a2mod {
+   'rewrite' : ensure => present;
+   'headers' : ensure => present;
+   'expires' : ensure => present;
+  }
+  
+  
+  file { $apache::params::vdir:
+    ensure => directory,
+    recurse => true,
+    purge => true,
+    notify => Service['httpd'],
+  } 
+}
diff --git a/pkg/puppetlabs-apache-0.0.3/manifests/params.pp b/pkg/puppetlabs-apache-0.0.3/manifests/params.pp
new file mode 100644
index 0000000..46d1bc2
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/manifests/params.pp
@@ -0,0 +1,47 @@
+# Class: apache::params
+#
+# This class manages Apache parameters
+#
+# Parameters:
+# - The $user that Apache runs as
+# - The $group that Apache runs as
+# - The $apache_name is the name of the package and service on the relevant distribution
+# - The $php_package is the name of the package that provided PHP
+# - The $ssl_package is the name of the Apache SSL package
+# - The $apache_dev is the name of the Apache development libraries package
+#
+# Actions:
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::params {
+
+  $user  = 'www-data'
+  $group = 'www-data'
+  
+  case $operatingsystem {
+    'centos', 'redhat', 'fedora': {
+       $apache_name = 'httpd'
+       $php_package = 'php'
+       $ssl_package = 'mod_ssl'
+       $apache_dev  = 'httpd-devel'
+       $vdir = '/etc/httpd/conf.d/'
+    }
+    'ubuntu', 'debian': {
+       $apache_name = 'apache2'
+       $php_package = 'libapache2-mod-php5'
+       $ssl_package = 'apache-ssl'
+       $apache_dev  = [ 'libaprutil1-dev', 'libapr1-dev', 'apache2-prefork-dev' ]
+       $vdir = '/etc/apache2/sites-enabled/'
+    }
+    default: {
+       $apache_name = 'apache2'
+       $php_package = 'libapache2-mod-php5'
+       $ssl_package = 'apache-ssl'
+       $apache_dev  = 'apache-dev'
+       $vdir = '/etc/apache2/sites-enabled/'
+    }
+  }
+}
diff --git a/pkg/puppetlabs-apache-0.0.3/manifests/php.pp b/pkg/puppetlabs-apache-0.0.3/manifests/php.pp
new file mode 100644
index 0000000..932eaee
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/manifests/php.pp
@@ -0,0 +1,22 @@
+# Class: apache::php
+#
+# This class installs PHP for Apache
+#
+# Parameters:
+# - $php_package
+#
+# Actions:
+#   - Install Apache PHP package
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::php {
+
+  include apache::params
+
+  package { $apache::params::php_package:
+    ensure => present,
+  }
+}
diff --git a/pkg/puppetlabs-apache-0.0.3/manifests/ssl.pp b/pkg/puppetlabs-apache-0.0.3/manifests/ssl.pp
new file mode 100644
index 0000000..f18bb14
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/manifests/ssl.pp
@@ -0,0 +1,29 @@
+# Class: apache::ssl
+#
+# This class installs Apache SSL capabilities
+#
+# Parameters:
+# - The $ssl_package name from the apache::params class
+#
+# Actions:
+#   - Install Apache SSL capabilities
+#
+# Requires:
+#
+# Sample Usage:
+#
+class apache::ssl {
+
+  include apache
+  
+  case $operatingsystem {
+     'centos', 'fedora', 'redhat': {
+        package { $apache::params::ssl_package:
+           require => Package['httpd'],
+        }
+     }
+     'ubuntu', 'debian': {
+        a2mod { "ssl": ensure => present, }
+     }
+  }
+}
diff --git a/pkg/puppetlabs-apache-0.0.3/manifests/vhost.pp b/pkg/puppetlabs-apache-0.0.3/manifests/vhost.pp
new file mode 100644
index 0000000..6a61d23
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/manifests/vhost.pp
@@ -0,0 +1,38 @@
+# Definition: apache::vhost
+#
+# This class installs Apache Virtual Hosts
+#
+# Parameters:
+# - The $port to configure the host on
+# - The $docroot provides the DocumentationRoot variable
+# - The $ssl option is set true or false to enable SSL for this Virtual Host
+# - The $template option specifies whether to use the default template or override
+# - The $priority of the site
+# - The $serveraliases of the site
+#
+# Actions:
+# - Install Apache Virtual Hosts
+#
+# Requires:
+# - The apache class
+#
+# Sample Usage:
+#  apache::vhost { 'site.name.fqdn':
+#    priority => '20',
+#    port => '80',
+#    docroot => '/path/to/docroot',
+#  }
+#
+define apache::vhost( $port, $docroot, $ssl=true, $template='apache/vhost-default.conf.erb', $priority, $serveraliases = '' ) {
+
+  include apache
+
+  file {"${apache::params::vdir}/${priority}-${name}":
+    content => template($template),
+    owner => 'root',
+    group => 'root',
+    mode => '777',
+    require => Package['httpd'],
+    notify => Service['httpd'],
+  }
+}
diff --git a/pkg/puppetlabs-apache-0.0.3/metadata.json b/pkg/puppetlabs-apache-0.0.3/metadata.json
new file mode 100644
index 0000000..5fa60a9
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/metadata.json
@@ -0,0 +1,51 @@
+{
+  "dependencies": [
+
+  ],
+  "types": [
+    {
+      "properties": [
+        {
+          "name": "ensure",
+          "doc": "The basic property that the resource should be in.  Valid values are ``present``, ``absent``."
+        }
+      ],
+      "parameters": [
+        {
+          "name": "name",
+          "doc": "The name of the module to be managed"
+        }
+      ],
+      "name": "a2mod",
+      "providers": [
+        {
+          "name": "a2mod",
+          "doc": "Manage Apache 2 modules on Debian and Ubuntu  Required binaries: ``a2enmod``, ``a2dismod``.    Default for ``operatingsystem`` == ``debianubuntu``.  "
+        }
+      ],
+      "doc": "Manage Apache 2 modules on Debian and Ubuntu"
+    }
+  ],
+  "checksums": {
+    "manifests/params.pp": "8728cf041cdd94bb0899170eb2b417d9",
+    "tests/ssl.pp": "191912535199531fd631f911c6329e56",
+    "tests/vhost.pp": "1b91e03c8ef89a7ecb6793831ac18399",
+    "manifests/php.pp": "8a5ca4035b1c22892923f3fde55e3d5e",
+    "files/httpd": "295f5e924afe6f752d29327e73fe6d0a",
+    "tests/php.pp": "ce7bb9eef69d32b42a32ce32d9653625",
+    "lib/puppet/provider/a2mod/a2mod.rb": "18c5bb180b75a2375e95e07f88a94257",
+    "files/test.vhost": "0602022c19a7b6b289f218c7b93c1aea",
+    "manifests/ssl.pp": "11ed1861298c72cca3a706480bb0b67c",
+    "manifests/dev.pp": "bc54a5af648cb04b7b3bb0e3f7be6543",
+    "manifests/vhost.pp": "7806a6c098e217da046d0555314756c4",
+    "tests/init.pp": "4eac4a7ef68499854c54a78879e25535",
+    "lib/puppet/type/a2mod.rb": "0e1b4843431413a10320ac1f6a055d15",
+    "tests/apache.pp": "4eac4a7ef68499854c54a78879e25535",
+    "tests/dev.pp": "4cf15c1fecea3ca86009f182b402c7ab",
+    "templates/vhost-default.conf.erb": "ed64a53af0d7bad762176a98c9ea3e62",
+    "manifests/init.pp": "9ef7e081c832bca8f861c3a9feb9949d",
+    "Modulefile": "9b7a414bf15b06afe2f011068fcaff52"
+  },
+  "version": "0.0.3",
+  "name": "puppetlabs-apache"
+}
\ No newline at end of file
diff --git a/pkg/puppetlabs-apache-0.0.3/templates/vhost-default.conf.erb b/pkg/puppetlabs-apache-0.0.3/templates/vhost-default.conf.erb
new file mode 100644
index 0000000..3c0f349
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/templates/vhost-default.conf.erb
@@ -0,0 +1,25 @@
+# ************************************
+# Default template in module puppetlabs-apache
+# Managed by Puppet
+# ************************************
+
+NameVirtualHost *:<%= port %>
+<VirtualHost *:<%= port %>>
+  ServerName <%= name %>
+<%if serveraliases.is_a? Array -%>
+<% serveraliases.each do |name| -%><%= "  ServerAlias #{name}\n" %><% end -%>
+<% elsif serveraliases != '' -%>
+<%= "  ServerAlias #{serveraliases}" -%>
+<% end -%>
+  DocumentRoot <%= docroot %>
+  <Directory <%= docroot %>>
+    Options Indexes FollowSymLinks MultiViews
+    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 On
+</VirtualHost>
diff --git a/pkg/puppetlabs-apache-0.0.3/tests/apache.pp b/pkg/puppetlabs-apache-0.0.3/tests/apache.pp
new file mode 100644
index 0000000..b3f9f13
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/tests/apache.pp
@@ -0,0 +1 @@
+include apache
diff --git a/pkg/puppetlabs-apache-0.0.3/tests/dev.pp b/pkg/puppetlabs-apache-0.0.3/tests/dev.pp
new file mode 100644
index 0000000..805ad7e
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/tests/dev.pp
@@ -0,0 +1 @@
+include apache::dev
diff --git a/pkg/puppetlabs-apache-0.0.3/tests/init.pp b/pkg/puppetlabs-apache-0.0.3/tests/init.pp
new file mode 100644
index 0000000..b3f9f13
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/tests/init.pp
@@ -0,0 +1 @@
+include apache
diff --git a/pkg/puppetlabs-apache-0.0.3/tests/php.pp b/pkg/puppetlabs-apache-0.0.3/tests/php.pp
new file mode 100644
index 0000000..618e0eb
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/tests/php.pp
@@ -0,0 +1 @@
+include apache::php
diff --git a/pkg/puppetlabs-apache-0.0.3/tests/ssl.pp b/pkg/puppetlabs-apache-0.0.3/tests/ssl.pp
new file mode 100644
index 0000000..cf2dacf
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/tests/ssl.pp
@@ -0,0 +1 @@
+include apache::ssl
diff --git a/pkg/puppetlabs-apache-0.0.3/tests/vhost.pp b/pkg/puppetlabs-apache-0.0.3/tests/vhost.pp
new file mode 100644
index 0000000..c916596
--- /dev/null
+++ b/pkg/puppetlabs-apache-0.0.3/tests/vhost.pp
@@ -0,0 +1,2 @@
+include apache
+apache::vhost { 'test.vhost': source => 'puppet:///modules/apache/test.vhost' }
diff --git a/templates/vhost-default.conf.erb b/templates/vhost-default.conf.erb
new file mode 100644
index 0000000..3c0f349
--- /dev/null
+++ b/templates/vhost-default.conf.erb
@@ -0,0 +1,25 @@
+# ************************************
+# Default template in module puppetlabs-apache
+# Managed by Puppet
+# ************************************
+
+NameVirtualHost *:<%= port %>
+<VirtualHost *:<%= port %>>
+  ServerName <%= name %>
+<%if serveraliases.is_a? Array -%>
+<% serveraliases.each do |name| -%><%= "  ServerAlias #{name}\n" %><% end -%>
+<% elsif serveraliases != '' -%>
+<%= "  ServerAlias #{serveraliases}" -%>
+<% end -%>
+  DocumentRoot <%= docroot %>
+  <Directory <%= docroot %>>
+    Options Indexes FollowSymLinks MultiViews
+    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 On
+</VirtualHost>
diff --git a/tests/apache.pp b/tests/apache.pp
new file mode 100644
index 0000000..b3f9f13
--- /dev/null
+++ b/tests/apache.pp
@@ -0,0 +1 @@
+include apache
diff --git a/tests/dev.pp b/tests/dev.pp
new file mode 100644
index 0000000..805ad7e
--- /dev/null
+++ b/tests/dev.pp
@@ -0,0 +1 @@
+include apache::dev
diff --git a/tests/init.pp b/tests/init.pp
new file mode 100644
index 0000000..b3f9f13
--- /dev/null
+++ b/tests/init.pp
@@ -0,0 +1 @@
+include apache
diff --git a/tests/php.pp b/tests/php.pp
new file mode 100644
index 0000000..618e0eb
--- /dev/null
+++ b/tests/php.pp
@@ -0,0 +1 @@
+include apache::php
diff --git a/tests/ssl.pp b/tests/ssl.pp
new file mode 100644
index 0000000..cf2dacf
--- /dev/null
+++ b/tests/ssl.pp
@@ -0,0 +1 @@
+include apache::ssl
diff --git a/tests/vhost.pp b/tests/vhost.pp
new file mode 100644
index 0000000..c916596
--- /dev/null
+++ b/tests/vhost.pp
@@ -0,0 +1,2 @@
+include apache
+apache::vhost { 'test.vhost': source => 'puppet:///modules/apache/test.vhost' }