Unlimited sudmodule's nesting for git provider
authorPaul Chechetin <paulche@yandex.ru>
Fri, 21 Dec 2012 16:49:45 +0000 (20:49 +0400)
committerPaul Chechetin <paulche@yandex.ru>
Wed, 17 Jul 2013 07:06:05 +0000 (11:06 +0400)
lib/puppet/provider/vcsrepo/git.rb
spec/unit/puppet/provider/vcsrepo/git_spec.rb

index 9254243..66c4d07 100644 (file)
@@ -205,10 +205,7 @@ Puppet::Type.type(:vcsrepo).provide(:git, :parent => Puppet::Provider::Vcsrepo)
 
   def update_submodules
     at_path do
-      git_with_identity('submodule', 'init')
-      git_with_identity('submodule', 'update')
-      git_with_identity('submodule', 'foreach', 'git', 'submodule', 'init')
-      git_with_identity('submodule', 'foreach', 'git', 'submodule', 'update')
+      git_with_identity('submodule', 'update', '--init', '--recursive')
     end
   end
 
index 83dbff2..c878941 100644 (file)
@@ -176,11 +176,8 @@ describe_provider :vcsrepo, :git, :resource => {:path => '/tmp/vcsrepo'} do
         provider.expects(:git).with('branch', '-a').returns(fixture(:git_branch_a))
         provider.expects(:git).with('checkout', '--force', resource.value(:revision))
         provider.expects(:git).with('branch', '-a').returns(fixture(:git_branch_a))
-        provider.expects(:git).with('submodule', 'init')
-        provider.expects(:git).with('submodule', 'update')
         provider.expects(:git).with('branch', '-a').returns(fixture(:git_branch_a))
-        provider.expects(:git).with('submodule', 'foreach', 'git', 'submodule', 'init')
-        provider.expects(:git).with('submodule', 'foreach', 'git', 'submodule', 'update')
+        provider.expects(:git).with('submodule', 'update', '--init', '--recursive')
         provider.revision = resource.value(:revision)
       end
     end