Improved collab creation

This commit is contained in:
Ossi Salmi 2010-11-09 14:41:11 +02:00 committed by Timo Mkinen
parent d9c26ac208
commit 5a7df2b0bd
3 changed files with 76 additions and 2 deletions

14
wiki/files/htaccess Normal file
View file

@ -0,0 +1,14 @@
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ wsgi/$1 [QSA,PT,L]
<Files wsgi>
SetHandler wsgi-script
</Files>
AuthType Basic
AuthName "Password Required (cancel for help)"
AuthUserFile /srv/wikis/collab/run/.htpasswd
AuthGroupFile /srv/wikis/collab/run/.htgroup
Require valid-user

View file

@ -78,6 +78,16 @@ class wiki::collab inherits wiki::graphingwiki::common {
class wiki::collab::base {
include cairo::python
include graphviz::python
include igraph::python
include ldap::client::python
include apache::mod::authnz_ldap
include apache::mod::ldap
include apache::mod::rewrite
include apache::mod::wsgi
include wiki::graphingwiki
include wiki::opencollab
include wiki::collab
@ -85,6 +95,16 @@ class wiki::collab::base {
include user::system
realize(User["collab"], Group["collab"])
case $operatingsystem {
debian,ubuntu: {
exec { "usermod-www-data":
path => "/bin:/usr/bin:/sbin:/usr/sbin",
command => "usermod -a -G collab www-data",
unless => "id -n -G www-data | grep '\bcollab\b'",
}
}
}
if $wiki_datadir {
file { "${wiki_datadir}":
ensure => directory,
@ -111,7 +131,7 @@ class wiki::collab::base {
"/srv/wikis/collab/archive",
"/srv/wikis/collab/cache",
"/srv/wikis/collab/config",
"/srv/wikis/collab/dockbook",
"/srv/wikis/collab/docbook",
"/srv/wikis/collab/htdocs",
"/srv/wikis/collab/log",
"/srv/wikis/collab/underlay",
@ -119,10 +139,46 @@ class wiki::collab::base {
"/srv/wikis/collab/wikis",
"/srv/wikis/collab/run", ]:
ensure => directory,
mode => 2770,
mode => 2660,
owner => collab,
group => collab,
require => [ File["/srv/wikis"], User["collab"], Group["collab"], ],
}
File["/srv/wikis/collab/underlay"] {
source => "/usr/local/share/moin/underlay",
recurse => true,
replace => false,
}
file { "/srv/wikis/collab/htdocs/.htaccess":
ensure => present,
mode => 0660,
owner => collab,
group => collab,
source => "puppet:///wiki/htaccess",
require => File["/srv/wikis/collab/htdocs"],
}
if !$wiki_collab_fqdn {
$wiki_collab_fqdn = $homename
}
file { "/srv/www/https/${wiki_collab_fqdn}/collab":
ensure => link,
target => "/srv/wikis/collab/htdocs",
require => File["/srv/www/https/${wiki_collab_fqdn}"],
}
file { "/srv/www/https/${wiki_collab_fqdn}/moin_static":
ensure => link,
target => "/usr/local/share/moin/htdocs",
require => File["/srv/www/https/${wiki_collab_fqdn}"],
}
apache::configfile { "collab.conf":
content => template("wiki/collab-httpd.conf.erb"),
http => false,
}
}

View file

@ -0,0 +1,4 @@
<Directory "/srv/www/https/<%= wiki_collab_fqdn %>/collab">
Options +ExecCGI
AllowOverride All
</Directory>