diff --git a/wiki/manifests/init.pp b/wiki/manifests/init.pp index 8912720..e0f152f 100644 --- a/wiki/manifests/init.pp +++ b/wiki/manifests/init.pp @@ -36,15 +36,13 @@ class wiki::moin { source => "/usr/local/src/moin.patch", require => Util::Extract::Tar["/usr/local/src/moin"], } - if $moin_package =~ /^moin-1\.9/ { - exec { "moin-copy-htdocs": - user => "root", - path => "/bin:/usr/bin:/sbin:/usr/sbin", - command => "cp -a /usr/local/src/moin/MoinMoin/web/static/htdocs /usr/local/src/moin/wiki", - creates => "/usr/local/src/moin/wiki/htdocs", - require => Util::Patch["/usr/local/src/moin"], - before => Python::Setup::Install["/usr/local/src/moin"], - } + exec { "moin-copy-htdocs": + user => "root", + path => "/bin:/usr/bin:/sbin:/usr/sbin", + command => "cp -a /usr/local/src/moin/MoinMoin/web/static/htdocs /usr/local/src/moin/wiki", + creates => "/usr/local/src/moin/wiki/htdocs", + require => Util::Patch["/usr/local/src/moin"], + before => Python::Setup::Install["/usr/local/src/moin"], } python::setup::install { "/usr/local/src/moin": require => Util::Patch["/usr/local/src/moin"], @@ -67,7 +65,7 @@ class wiki::moin { } -# Fetch graphingwiki from svn. +# Extract graphingwiki sources. # class wiki::graphingwiki::common { @@ -121,9 +119,9 @@ class wiki::opencollab inherits wiki::graphingwiki::common { } -# Install collab. +# Install Collab extensions. # -class wiki::collab inherits wiki::graphingwiki::common { +class wiki::collabbackend inherits wiki::graphingwiki::common { python::setup::install { "/usr/local/src/graphingwiki/collab": require => Util::Extract::Tar["/usr/local/src/graphingwiki"], @@ -153,7 +151,7 @@ class wiki::collab inherits wiki::graphingwiki::common { # Conference domain for jabber extauth. # Defaults to conference.$wiki_collab_jabberdomain. # -class wiki::collab::base { +class wiki::collab { include cairo::python include igraph::python @@ -166,19 +164,23 @@ class wiki::collab::base { include apache::mod::rewrite include apache::mod::wsgi - include wiki::moin - include wiki::graphingwiki - include wiki::opencollab - include wiki::collab + require wiki::moin + require wiki::graphingwiki + require wiki::opencollab + require wiki::collabbackend include user::system realize(User["collab"], Group["collab"]) - exec { "usermod-www-data": + exec { "usermod-collab": path => "/bin:/usr/bin:/sbin:/usr/sbin", command => "usermod -a -G collab ${apache::sslserver::user}", unless => "id -n -G ${apache::sslserver::user} | grep '\\bcollab\\b'", require => Group["collab"], + notify => $::operatingsystem ? { + "ubuntu" => Service["apache2"], + default => Service["httpsd"], + }, } if $wiki_datadir { @@ -229,12 +231,7 @@ class wiki::collab::base { owner => "collab", group => "collab", seltype => "httpd_sys_rw_content_t", - require => [ - File["/srv/wikis"], - User["collab"], - Group["collab"], - Class["wiki::moin", "wiki::collab"], - ], + require => [ File["/srv/wikis"], User["collab"], Group["collab"] ], before => Exec["collab-create collab collab"], } @@ -253,9 +250,11 @@ class wiki::collab::base { mode => "0660", owner => "collab", group => "collab", - source => [ "puppet:///private/wiki/collabfarm.py", - "puppet:///files/wiki/collabfarm.py", - "/usr/local/src/graphingwiki/collab/config/collabfarm.py", ], + source => [ + "puppet:///private/wiki/collabfarm.py", + "puppet:///files/wiki/collabfarm.py", + "/usr/local/src/graphingwiki/collab/config/collabfarm.py", + ], replace => false, seltype => "httpd_sys_rw_content_t", require => File["/srv/wikis/collab/config"], @@ -354,16 +353,13 @@ class wiki::collab::base { before => Cron["collab-htaccess"], } - if $wiki::moin::moin_package =~ /^moin-1\.9/ { - wiki::collab::package { "moin-English--all_pages.zip": - source => "/srv/wikis/collab/underlay/pages/LanguageSetup/attachments/English--all_pages.zip", - require => Exec["collab-copy-underlay"], - } + wiki::collab::package { "moin-English--all_pages.zip": + source => "/srv/wikis/collab/underlay/pages/LanguageSetup/attachments/English--all_pages.zip", + require => Exec["collab-copy-underlay"], } - wiki::collab::package { "moin-CollabBase.zip": source => "/usr/local/src/graphingwiki/collab/packages/CollabBase.zip", - require => Class["wiki::collab"], + require => Wiki::Collab::Package["moin-English--all_pages.zip"], } cron { "collab-htaccess": @@ -373,7 +369,7 @@ class wiki::collab::base { default => "/usr/bin/collab-htaccess", }, user => "collab", - require => [ Class["wiki::collab"], File["/srv/wikis/collab/htdocs/.htaccess"], ] + require => File["/srv/wikis/collab/htdocs/.htaccess"], } define configwebhost() { @@ -402,6 +398,14 @@ class wiki::collab::base { } +class wiki::collab::base { + + warning("wiki::collab::base is deprecated, include wiki::collab instead") + include wiki::collab + +} + + # Use ramdisk for collab cache. # class wiki::collab::ramcache {