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' }