aboutsummaryrefslogtreecommitdiff
path: root/templates
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2010-01-25 22:05:23 -0200
committerSilvio Rhatto <rhatto@riseup.net>2010-01-25 22:05:23 -0200
commit5f5aa68b1702d90063c5819b2db757428a10d345 (patch)
treeb14d719f906f1142e2d5da5bf43f3e6a5153201c /templates
parent25c9378cd03d6c8324f80959418049de1ce392ab (diff)
downloadpuppet-ikiwiki-5f5aa68b1702d90063c5819b2db757428a10d345.tar.gz
puppet-ikiwiki-5f5aa68b1702d90063c5819b2db757428a10d345.tar.bz2
Trying to fix permission issue
Diffstat (limited to 'templates')
-rw-r--r--templates/deploy.sh.erb8
-rw-r--r--templates/ikiwiki.setup.erb4
-rw-r--r--templates/update.sh.erb29
3 files changed, 35 insertions, 6 deletions
diff --git a/templates/deploy.sh.erb b/templates/deploy.sh.erb
index aac3de7..751264d 100644
--- a/templates/deploy.sh.erb
+++ b/templates/deploy.sh.erb
@@ -7,7 +7,7 @@ SITE=$BASE/$NAME
CONF="/etc/ikiwiki"
WEB_OWNER="www-data"
WEB_GROUP="www-data"
-REPO_OWNER="www-data"
+REPO_OWNER="gitosis"
REPO_GROUP="gitosis"
REPO="/var/git/repositories/$NAME.git"
@@ -37,8 +37,6 @@ EOF
ikiwiki-makerepo git $SITE/"$INSTANCE"_src/ $REPO
touch $REPO/git-daemon-export-ok
( cd $REPO/$NAME.git && git --bare update-server-info )
-ikiwiki --setup /etc/ikiwiki/$NAME.setup
-# Set permissions
-chown -R $WEB_OWNER.$WEB_GROUP $SITE/"$INSTANCE"_src $SITE/$INSTANCE
-chown -R $REPO_OWNER.$REPO_GROUP $REPO
+# Refresh the instance
+ikiwiki-refresh $NAME $INSTANCE
diff --git a/templates/ikiwiki.setup.erb b/templates/ikiwiki.setup.erb
index 359932c..a2f40d1 100644
--- a/templates/ikiwiki.setup.erb
+++ b/templates/ikiwiki.setup.erb
@@ -64,7 +64,8 @@ use IkiWiki::Setup::Standard {
# The cgi wrapper.
cgi => 1,
wrapper => "<%= apache_sites_folder %>/<%= name %>/ikiwiki/ikiwiki.cgi",
- wrappermode => "06755",
+ wrappermode => "06750",
+ wrappergroup => "gitosis",
},
#{
# # The svn post-commit wrapper.
@@ -84,6 +85,7 @@ use IkiWiki::Setup::Standard {
# what you want.
wrapper => "/var/git/repositories/<%= name %>.git/hooks/post-update",
wrappermode => "04550",
+ wrappergroup => "gitosis",
},
#{
# # The monotone netsync hook.
diff --git a/templates/update.sh.erb b/templates/update.sh.erb
new file mode 100644
index 0000000..e158f58
--- /dev/null
+++ b/templates/update.sh.erb
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+NAME="$1"
+INSTANCE="$2"
+BASE="<%= apache_sites_folder %>"
+SITE=$BASE/$NAME
+CONF="/etc/ikiwiki"
+WEB_OWNER="www-data"
+WEB_GROUP="www-data"
+REPO_OWNER="gitosis"
+REPO_GROUP="gitosis"
+REPO="/var/git/repositories/$NAME.git"
+
+if [ -z "$INSTANCE" ]; then
+ echo "Usage:`basename $0` <site> <instance>"
+fi
+
+if [ ! -e "$CONF/$NAME" ]; then
+ echo "No config file for $NAME"
+fi
+
+# Setup
+ikiwiki --setup /etc/ikiwiki/$NAME.setup
+
+# Fix permissions
+chown -R $WEB_OWNER.$WEB_GROUP $SITE/"$INSTANCE"_src $SITE/$INSTANCE
+chown -R $REPO_OWNER.$REPO_GROUP $REPO
+chown $WEB_OWNER.$REPO_GROUP $REPO/hooks/post-update
+chown $WEB_OWNER.$REPO_GROUP $SITE/$INSTANCE/ikiwiki.cgi