Revision
307
Author
misc
Date
2010-11-19 01:46:14 +0100 (Fri, 19 Nov 2010)

Log Message

add check for root and empty commit

Modified Paths

Added Paths

Modified: puppet/modules/subversion/manifests/init.pp
===================================================================
--- puppet/modules/subversion/manifests/init.pp	2010-11-19 00:46:13 UTC (rev 306)
+++ puppet/modules/subversion/manifests/init.pp	2010-11-19 00:46:14 UTC (rev 307)
@@ -30,6 +30,22 @@
         }
 
         # mettre tout les scripts dans le repertoire
+        file { "$local_dir/pre-commit.d/no_root_commit":
+            ensure => present,
+            owner => root,
+            group => root,
+            mode => 755,
+            content => template('subversion/no_root_commit') 
+        }
+
+        file { "$local_dir/pre-commit.d/no_empty_message":
+            ensure => present,
+            owner => root,
+            group => root,
+            mode => 755,
+            content => template('subversion/no_empty_message') 
+        }
+
         syntax_check{"check_perl":
             regexp_ext => ".p[lm]$",
             check_cmd => "perl -c"

Added: puppet/modules/subversion/templates/no_empty_message
===================================================================
--- puppet/modules/subversion/templates/no_empty_message	                        (rev 0)
+++ puppet/modules/subversion/templates/no_empty_message	2010-11-19 00:46:14 UTC (rev 307)
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+REP="$1"
+TXN="$2"
+
+LOG=$(svnlook log -t "$TXN" "$REP")
+
+if ! echo "$LOG" | grep -qv '^$'; then
+    echo "no empty commit message allowed" >&2
+    exit 1
+fi
+

Added: puppet/modules/subversion/templates/no_root_commit
===================================================================
--- puppet/modules/subversion/templates/no_root_commit	                        (rev 0)
+++ puppet/modules/subversion/templates/no_root_commit	2010-11-19 00:46:14 UTC (rev 307)
@@ -0,0 +1,12 @@
+#!/bin/sh
+
+REP="$1"
+TXN="$2"
+
+author=$(svnlook author -t "$TXN" "$REP")
+
+if [ "$author" == 'root' ]; then
+    echo "no root commit allowed" >&2
+    exit 1
+fi
+