summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Schmitt <david.schmitt@puppetlabs.com>2015-06-22 15:27:40 +0100
committerDavid Schmitt <david.schmitt@puppetlabs.com>2015-06-22 15:27:40 +0100
commitfd63cd94caae3aedcce53b8fad9fd1d5f29139da (patch)
treee6fc9191be3f358531fb6771f75ba146cbfe7220
parent4840ffbfbe2db1403979eac2e539a605917470f9 (diff)
parentae60f5ccb7c00a0e162a06ba05d247688ffbce4b (diff)
Merge pull request #255 from jonnytpuppet/depth_fix
MODULES-2131 Git provider now takes account of revision property when using depth property.
-rw-r--r--lib/puppet/provider/vcsrepo/git.rb3
-rw-r--r--spec/unit/puppet/provider/vcsrepo/git_spec.rb2
2 files changed, 4 insertions, 1 deletions
diff --git a/lib/puppet/provider/vcsrepo/git.rb b/lib/puppet/provider/vcsrepo/git.rb
index 49ac648..8074950 100644
--- a/lib/puppet/provider/vcsrepo/git.rb
+++ b/lib/puppet/provider/vcsrepo/git.rb
@@ -180,6 +180,9 @@ Puppet::Type.type(:vcsrepo).provide(:git, :parent => Puppet::Provider::Vcsrepo)
args = ['clone']
if @resource.value(:depth) and @resource.value(:depth).to_i > 0
args.push('--depth', @resource.value(:depth).to_s)
+ if @resource.value(:revision)
+ args.push('--branch', @resource.value(:revision).to_s)
+ end
end
if @resource.value(:branch)
args.push('--branch', @resource.value(:branch).to_s)
diff --git a/spec/unit/puppet/provider/vcsrepo/git_spec.rb b/spec/unit/puppet/provider/vcsrepo/git_spec.rb
index d33c98a..a240b50 100644
--- a/spec/unit/puppet/provider/vcsrepo/git_spec.rb
+++ b/spec/unit/puppet/provider/vcsrepo/git_spec.rb
@@ -62,7 +62,7 @@ branches
resource[:depth] = 1
Dir.expects(:chdir).with('/').at_least_once.yields
Dir.expects(:chdir).with('/tmp/test').at_least_once.yields
- provider.expects(:git).with('clone', '--depth', '1', resource.value(:source), resource.value(:path))
+ provider.expects(:git).with('clone', '--depth', '1', '--branch', resource.value(:revision),resource.value(:source), resource.value(:path))
provider.expects(:update_submodules)
provider.expects(:update_remote_url).with("origin", resource.value(:source)).returns false
provider.expects(:git).with('branch', '-a').returns(branch_a_list(resource.value(:revision)))