[Mageia-sysadm] [323] - try to workaround the missing feature of puppet about umask and Exec

root at mageia.org root at mageia.org
Fri Nov 19 02:00:01 CET 2010


Revision: 323
Author:   misc
Date:     2010-11-19 02:00:01 +0100 (Fri, 19 Nov 2010)
Log Message:
-----------
- try to workaround the missing feature of puppet about umask and Exec

Modified Paths:
--------------
    puppet/modules/subversion/manifests/init.pp

Added Paths:
-----------
    puppet/modules/subversion/templates/create_svn_repo.sh

Modified: puppet/modules/subversion/manifests/init.pp
===================================================================
--- puppet/modules/subversion/manifests/init.pp	2010-11-19 01:00:00 UTC (rev 322)
+++ puppet/modules/subversion/manifests/init.pp	2010-11-19 01:00:01 UTC (rev 323)
@@ -22,6 +22,15 @@
              ensure => directory,
         }
 
+	# workaround the lack of umask command in puppet < 2.7
+	file { "/usr/local/bin/create_svn_repo.sh":
+             ensure => present,
+             owner => root,
+             group => root,
+             mode => 755,
+             content => template('subversion/create_svn_repo.sh') 
+	} 
+
         define syntax_check($regexp_ext,$check_cmd) {
             file { "$local_dir/pre-commit.d/$name":
                 ensure => present,
@@ -105,7 +114,9 @@
         # $name ==> directory of the repo
 	include subversion::server
         # TODO set umask -> requires puppet 2.7.0
-        exec { "svnadmin create $name":
+	# unfortunatly, umask is required
+	# http://projects.puppetlabs.com/issues/4424
+        exec { "/usr/local/bin/create_svn_repo.sh $name":
             user => root,
             group => $group,
             creates => "$name/hooks",
@@ -129,7 +140,7 @@
             group => root,
             mode => 755,
             content => template("subversion/hook_commit.sh"),
-	    require => Exec["svnadmin create $name"],
+	    require => Exec["/usr/local/bin/create_svn_repo.sh $name"],
         }
 
         file { ["$name/hooks/post-commit.d", "$name/hooks/pre-commit.d"]:
@@ -137,7 +148,7 @@
             owner => root,
             group => root,
             mode => 755,
-	    require => Exec["svnadmin create $name"],
+	    require => File["$name/hooks/pre-commit"],
         }
 
         if $commit_mail {
@@ -147,7 +158,7 @@
                 group => root,
                 mode => 755,
                 content => template("subversion/hook_sendmail.pl"),
-	    	require => [Exec["svnadmin create $name"], Package['perl-SVN-Notify-Config']],
+	    	require => [Package['perl-SVN-Notify-Config']],
             }
         }
 

Added: puppet/modules/subversion/templates/create_svn_repo.sh
===================================================================
--- puppet/modules/subversion/templates/create_svn_repo.sh	                        (rev 0)
+++ puppet/modules/subversion/templates/create_svn_repo.sh	2010-11-19 01:00:01 UTC (rev 323)
@@ -0,0 +1,7 @@
+#!/bin/bash
+umask 0002
+# needed for http://idolinux.blogspot.com/2010/05/subversion-svn-group-permissions.html
+svnadmin create --pre-1.6-compatible "$1"
+#chmod g+w "$1"/db/txn-current-lock
+#chmod g+w "$1"/db/transactions
+#chmod g+w "$1"/db/locks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/mageia-sysadm/attachments/20101119/3d3e2d10/attachment.html>


More information about the Mageia-sysadm mailing list