diff options
author | Ashley Penney <ashley.penney@puppetlabs.com> | 2014-05-13 17:29:28 -0400 |
---|---|---|
committer | Ashley Penney <ashley.penney@puppetlabs.com> | 2014-05-13 17:29:28 -0400 |
commit | b30acce599e25e803ba333217d3b0d49d1815169 (patch) | |
tree | 9c12b98a82ea0666d9ba8b5925b51a7e547f1896 /lib/puppet/type | |
parent | 46588aa62d444c5f0a538cccec357a80cd191b93 (diff) | |
parent | cfcd03a7c59eaa6b81de8c767bbd91e6d278c0f2 (diff) | |
download | puppet-vcsrepo-b30acce599e25e803ba333217d3b0d49d1815169.tar.gz puppet-vcsrepo-b30acce599e25e803ba333217d3b0d49d1815169.tar.bz2 |
Merge pull request #138 from cyberious/FM-1284
Fix issue where force=>true was not destroying repository then recreatin...
Diffstat (limited to 'lib/puppet/type')
-rw-r--r-- | lib/puppet/type/vcsrepo.rb | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/puppet/type/vcsrepo.rb b/lib/puppet/type/vcsrepo.rb index 1dab2b9..3dd7bc6 100644 --- a/lib/puppet/type/vcsrepo.rb +++ b/lib/puppet/type/vcsrepo.rb @@ -76,7 +76,7 @@ Puppet::Type.newtype(:vcsrepo) do end newvalue :latest, :required_features => [:reference_tracking] do - if provider.exists? + if provider.exists? && !@resource.value(:force) if provider.respond_to?(:update_references) provider.update_references end @@ -97,6 +97,12 @@ Puppet::Type.newtype(:vcsrepo) do prov = @resource.provider if prov if prov.working_copy_exists? + if @resource.value(:force) + notice "Deleting current repository before recloning" + prov.destroy + notice "Create repository from latest" + prov.create + end (@should.include?(:latest) && prov.latest?) ? :latest : :present elsif prov.class.feature?(:bare_repositories) and prov.bare_exists? :bare |