aboutsummaryrefslogtreecommitdiffstats
path: root/modules/subversion/manifests
diff options
context:
space:
mode:
authorMichael Scherer <misc@mageia.org>2010-11-19 01:00:01 +0000
committerMichael Scherer <misc@mageia.org>2010-11-19 01:00:01 +0000
commit293a499eae8f97729253147a6d608759ec28403a (patch)
tree13a5d0a856033b4ee1e51fb84b9728aa6e941b49 /modules/subversion/manifests
parentc53a024f0106c0372a2e23446437f8645fe3493e (diff)
downloadpuppet-293a499eae8f97729253147a6d608759ec28403a.tar
puppet-293a499eae8f97729253147a6d608759ec28403a.tar.gz
puppet-293a499eae8f97729253147a6d608759ec28403a.tar.bz2
puppet-293a499eae8f97729253147a6d608759ec28403a.tar.xz
puppet-293a499eae8f97729253147a6d608759ec28403a.zip
- try to workaround the missing feature of puppet about umask and Exec
Diffstat (limited to 'modules/subversion/manifests')
-rw-r--r--modules/subversion/manifests/init.pp19
1 files changed, 15 insertions, 4 deletions
diff --git a/modules/subversion/manifests/init.pp b/modules/subversion/manifests/init.pp
index ae7676e2..22beda81 100644
--- a/modules/subversion/manifests/init.pp
+++ b/modules/subversion/manifests/init.pp
@@ -22,6 +22,15 @@ class subversion {
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 @@ class subversion {
# $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 @@ class subversion {
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 @@ class subversion {
owner => root,
group => root,
mode => 755,
- require => Exec["svnadmin create $name"],
+ require => File["$name/hooks/pre-commit"],
}
if $commit_mail {
@@ -147,7 +158,7 @@ class subversion {
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']],
}
}