From b8f25cea95317a4b2a622e2799f1aa7ba159bdca Mon Sep 17 00:00:00 2001 From: "Strech (Sergey Fedorov)" Date: Tue, 22 Dec 2015 23:02:26 +0100 Subject: Add mirror option for git cloning Example: vcsrepo { '/path/to/repo': ensure => mirror, provider => git, source => 'git://example.com/repo.git', } --- lib/puppet/type/vcsrepo.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'lib/puppet/type/vcsrepo.rb') diff --git a/lib/puppet/type/vcsrepo.rb b/lib/puppet/type/vcsrepo.rb index 290bdad..e2ef0b7 100644 --- a/lib/puppet/type/vcsrepo.rb +++ b/lib/puppet/type/vcsrepo.rb @@ -69,6 +69,8 @@ Puppet::Type.newtype(:vcsrepo) do end when :bare return is == :bare + when :mirror + return is == :mirror end end @@ -83,6 +85,12 @@ Puppet::Type.newtype(:vcsrepo) do end end + newvalue :mirror, :required_features => [:bare_repositories] do + if !provider.exists? + provider.create + end + end + newvalue :absent do provider.destroy end @@ -227,7 +235,7 @@ Puppet::Type.newtype(:vcsrepo) do newparam :conflict do desc "The action to take if conflicts exist between repository and working copy" end - + newparam :trust_server_cert do desc "Trust server certificate" newvalues(:true, :false) -- cgit v1.2.3