summaryrefslogtreecommitdiff
path: root/lib/puppet/type/vcsrepo.rb
diff options
context:
space:
mode:
authorStrech (Sergey Fedorov) <oni.strech@gmail.com>2015-12-22 23:02:26 +0100
committerStrech (Sergey Fedorov) <oni.strech@gmail.com>2015-12-22 23:02:26 +0100
commitb8f25cea95317a4b2a622e2799f1aa7ba159bdca (patch)
treeb25b192cfe2c2c37215d65c0eb63bed7b8bccf4b /lib/puppet/type/vcsrepo.rb
parent268e599839f86f7d5dd4352e73c0f698dc4b0c18 (diff)
Add mirror option for git cloning
Example: vcsrepo { '/path/to/repo': ensure => mirror, provider => git, source => 'git://example.com/repo.git', }
Diffstat (limited to 'lib/puppet/type/vcsrepo.rb')
-rw-r--r--lib/puppet/type/vcsrepo.rb10
1 files changed, 9 insertions, 1 deletions
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)