From 18c039c8d169000c0d49a6d0b941f6f66ac1d7cb Mon Sep 17 00:00:00 2001 From: Matthias Pigulla Date: Thu, 6 Oct 2011 23:35:41 +0200 Subject: Fix (#10440) by making all commands optional This will work around the issue in http://projects.puppetlabs.com/issues/6907, as the agent run will no longer fail if one of the commands is not installed. This gives you enough time to install the necessary packages through Puppet (make sure you get the dependencies right), as the agent won't fail unless you really start accessing the repository. --- lib/puppet/provider/vcsrepo/bzr.rb | 2 +- lib/puppet/provider/vcsrepo/cvs.rb | 2 +- lib/puppet/provider/vcsrepo/git.rb | 2 +- lib/puppet/provider/vcsrepo/hg.rb | 2 +- lib/puppet/provider/vcsrepo/svn.rb | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/puppet/provider/vcsrepo/bzr.rb b/lib/puppet/provider/vcsrepo/bzr.rb index a060562..35226d1 100644 --- a/lib/puppet/provider/vcsrepo/bzr.rb +++ b/lib/puppet/provider/vcsrepo/bzr.rb @@ -3,7 +3,7 @@ require File.join(File.dirname(__FILE__), '..', 'vcsrepo') Puppet::Type.type(:vcsrepo).provide(:bzr, :parent => Puppet::Provider::Vcsrepo) do desc "Supports Bazaar repositories" - commands :bzr => 'bzr' + optional_commands :bzr => 'bzr' defaultfor :bzr => :exists has_features :reference_tracking diff --git a/lib/puppet/provider/vcsrepo/cvs.rb b/lib/puppet/provider/vcsrepo/cvs.rb index e82c23a..1e5ce80 100644 --- a/lib/puppet/provider/vcsrepo/cvs.rb +++ b/lib/puppet/provider/vcsrepo/cvs.rb @@ -3,7 +3,7 @@ require File.join(File.dirname(__FILE__), '..', 'vcsrepo') Puppet::Type.type(:vcsrepo).provide(:cvs, :parent => Puppet::Provider::Vcsrepo) do desc "Supports CVS repositories/workspaces" - commands :cvs => 'cvs' + optional_commands :cvs => 'cvs' defaultfor :cvs => :exists has_features :gzip_compression, :reference_tracking diff --git a/lib/puppet/provider/vcsrepo/git.rb b/lib/puppet/provider/vcsrepo/git.rb index 6756fc0..51e48a9 100644 --- a/lib/puppet/provider/vcsrepo/git.rb +++ b/lib/puppet/provider/vcsrepo/git.rb @@ -4,7 +4,7 @@ Puppet::Type.type(:vcsrepo).provide(:git, :parent => Puppet::Provider::Vcsrepo) desc "Supports Git repositories" ##TODO modify the commands below so that the su - is included - commands :git => 'git' + optional_commands :git => 'git' defaultfor :git => :exists has_features :bare_repositories, :reference_tracking, :ssh_identity diff --git a/lib/puppet/provider/vcsrepo/hg.rb b/lib/puppet/provider/vcsrepo/hg.rb index f967586..54205c2 100644 --- a/lib/puppet/provider/vcsrepo/hg.rb +++ b/lib/puppet/provider/vcsrepo/hg.rb @@ -3,7 +3,7 @@ require File.join(File.dirname(__FILE__), '..', 'vcsrepo') Puppet::Type.type(:vcsrepo).provide(:hg, :parent => Puppet::Provider::Vcsrepo) do desc "Supports Mercurial repositories" - commands :hg => 'hg' + optional_commands :hg => 'hg' defaultfor :hg => :exists has_features :reference_tracking diff --git a/lib/puppet/provider/vcsrepo/svn.rb b/lib/puppet/provider/vcsrepo/svn.rb index 6ec4612..bd420b5 100644 --- a/lib/puppet/provider/vcsrepo/svn.rb +++ b/lib/puppet/provider/vcsrepo/svn.rb @@ -3,7 +3,7 @@ require File.join(File.dirname(__FILE__), '..', 'vcsrepo') Puppet::Type.type(:vcsrepo).provide(:svn, :parent => Puppet::Provider::Vcsrepo) do desc "Supports Subversion repositories" - commands :svn => 'svn', + optional_commands :svn => 'svn', :svnadmin => 'svnadmin' defaultfor :svn => :exists -- cgit v1.2.3