From b604693d32eed5d0172578b6db6d442a197bc373 Mon Sep 17 00:00:00 2001 From: mh Date: Sat, 2 Oct 2010 13:54:11 +0200 Subject: allow also that submodules are initialized --- manifests/clone.pp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/manifests/clone.pp b/manifests/clone.pp index 0fe70c4..4025648 100644 --- a/manifests/clone.pp +++ b/manifests/clone.pp @@ -1,7 +1,11 @@ +# submodules: Whether we should initialize and update +# submodules as well +# Default: false define git::clone( $ensure = present, $git_repo, $projectroot, + $submodules = false, $cloneddir_user='root', $cloneddir_group='0', $cloneddir_restrict_mode=true @@ -15,11 +19,19 @@ define git::clone( default: { require ::git exec {"git-clone_${name}": - command => "git-clone --no-hardlinks ${git_repo} ${projectroot}", + command => "git clone --no-hardlinks ${git_repo} ${projectroot}", creates => "${projectroot}/.git", user => root, notify => Exec["git-clone-chown_${name}"], } + if $submodules { + exec{"git-submodules_${name}": + command => "git submodule init && git submodule update", + cwd => $projectroot, + refreshonly => true, + subscribe => Exec["git-clone_${name}"], + } + } exec {"git-clone-chown_${name}": command => "chown -R ${cloneddir_user}:${cloneddir_group} ${projectroot};chmod -R og-rwx ${projectroot}/.git", refreshonly => true -- cgit v1.2.3