diff options
Diffstat (limited to 'modules/subversion/manifests')
-rw-r--r-- | modules/subversion/manifests/init.pp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/modules/subversion/manifests/init.pp b/modules/subversion/manifests/init.pp index 7f09b393..b5131cb5 100644 --- a/modules/subversion/manifests/init.pp +++ b/modules/subversion/manifests/init.pp @@ -273,4 +273,30 @@ class subversion { minute => $refresh } } + + class mirror { + include subversion::tools + file { "/usr/local/bin/create_svn_mirror.sh": + ensure => present, + owner => root, + group => root, + mode => 755, + content => template('subversion/create_svn_mirror.sh') + } + } + + define mirror_repository($source, + $refresh = '*/5') { + include subversion::mirror + + exec { "/usr/local/bin/create_svn_mirror.sh $name $source": + creates => $name, + require => Package['subversion-tools'] + } + + cron { "update $name": + command => "/usr/bin/svnsync synchronize file://$name", + minute => $refresh, + } + } } |