aboutsummaryrefslogtreecommitdiff
path: root/manifests/subsystems/websites.pp
diff options
context:
space:
mode:
Diffstat (limited to 'manifests/subsystems/websites.pp')
-rw-r--r--manifests/subsystems/websites.pp151
1 files changed, 0 insertions, 151 deletions
diff --git a/manifests/subsystems/websites.pp b/manifests/subsystems/websites.pp
deleted file mode 100644
index 6fa764b..0000000
--- a/manifests/subsystems/websites.pp
+++ /dev/null
@@ -1,151 +0,0 @@
-class websites::setup {
- # Third-party hosted nodes generally aren't behind an https proxy
- $hosting_type = hiera('nodo::vserver::hosting_type', 'direct')
-
- # Include apache
- class { 'apache':
- https_proxy => $hosting_type ? {
- 'direct' => 'yes',
- default => false,
- },
- }
-
- # The needed apache modules
- apache::module { "alias":
- ensure => present,
- }
-
- # Images folder
- file { "${apache::www_folder}/images":
- ensure => directory,
- recurse => true,
- purge => true,
- force => true,
- owner => "root",
- group => "root",
- # This mode will also apply to files from the source directory
- mode => 0644,
- # Puppet will automatically set +x for directories
- source => [ "puppet:///modules/site_apache/htdocs/${::domain}/images",
- "puppet:///modules/nodo/htdocs/images", ]
- }
-
- # Web index
- file { "${apache::www_folder}/index.html":
- ensure => present,
- owner => "root",
- group => "root",
- mode => 0644,
- source => [ "puppet:///modules/site_apache/htdocs/${::domain}/index.html",
- "puppet:///modules/nodo/htdocs/index.html", ]
- }
-
- # Missing page
- file { "${apache::www_folder}/missing.html":
- ensure => present,
- owner => "root",
- group => "root",
- mode => 0644,
- source => [ "puppet:///modules/site_apache/htdocs/${::domain}/missing.html",
- "puppet:///modules/nodo/htdocs/missing.html", ]
- }
-
- # Make sure that a top level index exists
- file { "/var/www/index.html":
- ensure => present,
- }
-
- # Default vhost: can just be applied on the defining host
- apache::site { "${apache::server_name}":
- server_alias => "${::domain}",
- docroot => "${apache::www_folder}",
- mpm => false,
- tag => 'all',
- }
-
- # We have to use 'zzz-error' so it will be the last matched vhost
- apache::site { "error":
- template => 'apache/error.erb',
- docroot => "${apache::error_folder}",
- filename => 'zzz-error',
- mpm => false,
- tag => 'all',
- }
-
- # Index page for error
- file { "${apache::error_folder}/index.html":
- ensure => "${apache::www_folder}/index.html",
- owner => "root",
- group => "root",
- force => true,
- require => File["${apache::error_folder}"],
- }
-
- # Images folder for error
- file { "${apache::error_folder}/images":
- ensure => "${apache::www_folder}/images",
- owner => "root",
- group => "root",
- force => true,
- require => File["${apache::error_folder}", "${apache::www_folder}/images"],
- }
-
-}
-
-class websites::hosting inherits websites::setup {
- # Include the needed classes for website hosting
- include php
- include trac
- include websvn
- include moin
- include apache::rails
-
- # Declare the needed classes for website hosting
- class { [ 'drupal', 'ikiwiki', 'pmwiki', 'hotglue', 'wordpress' ]: }
- class {
- 'viewvc':
- root_parents => "/var/svn : svn";
- }
-
- $git_daemon = hiera('nodo::web::git_daemon', True)
-
- if $git_daemon != false {
- class { 'gitweb': }
- }
-
- apache::site { "images":
- docroot => "${apache::www_folder}/images",
- mpm => false,
- tag => 'all',
- }
-
- # Remove untagged site instances
- Apache::Site <| tag != $::hostname and tag != 'all' |> {
- ensure => absent,
- }
-
- # Remove untagged database instances
- Database::Instance <| tag != $::hostname and tag != 'all' |> {
- ensure => absent,
- }
-
- # Remove untagged ikiwiki instances
- Ikiwiki::Instance <| tag != $::hostname and tag != 'all' |> {
- ensure => absent,
- }
-}
-
-class websites::hosting::admin inherits websites::setup {
- # Include the needed classes for admin interfaces
- include trac
- include gitweb
-}
-
-class websites::dev::setup inherits websites::setup {
- # Include the needed classes for website development
- include php
- include apache::rails
-
- # Declare the needed classes for website development
- class { 'drupal': }
-}