diff options
Diffstat (limited to 'manifests/subsystems/websites.pp')
| -rw-r--r-- | manifests/subsystems/websites.pp | 151 | 
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': } -} | 
