From 7fbbf2535c9a76b23efe6247d4a1cd4cdc299483 Mon Sep 17 00:00:00 2001 From: Markus Frosch Date: Tue, 16 Feb 2016 15:08:11 +0100 Subject: Bring stderr output to the Puppet visible output --- lib/puppet/provider/vcsrepo/cvs.rb | 4 ++-- lib/puppet/provider/vcsrepo/git.rb | 2 +- lib/puppet/provider/vcsrepo/hg.rb | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/puppet/provider/vcsrepo/cvs.rb b/lib/puppet/provider/vcsrepo/cvs.rb index 7a8f6ef..e5bde7a 100644 --- a/lib/puppet/provider/vcsrepo/cvs.rb +++ b/lib/puppet/provider/vcsrepo/cvs.rb @@ -127,9 +127,9 @@ Puppet::Type.type(:vcsrepo).provide(:cvs, :parent => Puppet::Provider::Vcsrepo) if @resource.value(:user) and @resource.value(:user) != Facter['id'].value Puppet.debug "Running as user " + @resource.value(:user) - Puppet::Util::Execution.execute([:cvs, *args], :uid => @resource.value(:user), :custom_environment => e) + Puppet::Util::Execution.execute([:cvs, *args], :uid => @resource.value(:user), :custom_environment => e, :combine => true) else - Puppet::Util::Execution.execute([:cvs, *args], :custom_environment => e) + Puppet::Util::Execution.execute([:cvs, *args], :custom_environment => e, :combine => true) end end end diff --git a/lib/puppet/provider/vcsrepo/git.rb b/lib/puppet/provider/vcsrepo/git.rb index 63986ab..804c740 100644 --- a/lib/puppet/provider/vcsrepo/git.rb +++ b/lib/puppet/provider/vcsrepo/git.rb @@ -472,7 +472,7 @@ Puppet::Type.type(:vcsrepo).provide(:git, :parent => Puppet::Provider::Vcsrepo) end elsif @resource.value(:user) and @resource.value(:user) != Facter['id'].value env = Etc.getpwnam(@resource.value(:user)) - Puppet::Util::Execution.execute("git #{args.join(' ')}", :uid => @resource.value(:user), :failonfail => true, :custom_environment => {'HOME' => env['dir']}) + Puppet::Util::Execution.execute("git #{args.join(' ')}", :uid => @resource.value(:user), :failonfail => true, :custom_environment => {'HOME' => env['dir']}, :combine => true) else git(*args) end diff --git a/lib/puppet/provider/vcsrepo/hg.rb b/lib/puppet/provider/vcsrepo/hg.rb index 294c2a9..b426963 100644 --- a/lib/puppet/provider/vcsrepo/hg.rb +++ b/lib/puppet/provider/vcsrepo/hg.rb @@ -122,7 +122,7 @@ Puppet::Type.type(:vcsrepo).provide(:hg, :parent => Puppet::Provider::Vcsrepo) d end if @resource.value(:user) and @resource.value(:user) != Facter['id'].value args.map! { |a| if a =~ /\s/ then "'#{a}'" else a end } # Adds quotes to arguments with whitespaces. - Puppet::Util::Execution.execute("hg #{args.join(' ')}", :uid => @resource.value(:user), :failonfail => true) + Puppet::Util::Execution.execute("hg #{args.join(' ')}", :uid => @resource.value(:user), :failonfail => true, :combine => true) else hg(*args) end -- cgit v1.2.3 From 5e46486d3ea2d15984edfb28875471436f466a65 Mon Sep 17 00:00:00 2001 From: Nate Butler Date: Thu, 1 Sep 2016 15:47:27 -0400 Subject: Fix bug in ensure => absent The insync? method wasn't accounting for a condition where the state was absent and the desired state was absent. This manifest itself in puppet runs that would constantly output the following after setting ensure => absent. 2016-09-01T16:39:27.314283+00:00 vcstest puppet-agent[1161]: (/Stage[main]/Main/Node[vcstest]/Vcsrepo[/home/vagrant/test]/ensure) created 2016-09-01T16:40:22.583125+00:00 vcstest puppet-agent[1727]: (/Stage[main]/Main/Node[vcstest]/Vcsrepo[/home/vagrant/test]/ensure) created 2016-09-01T16:41:04.031750+00:00 vcstest puppet-agent[2267]: (/Stage[main]/Main/Node[vcstest]/Vcsrepo[/home/vagrant/test]/ensure) created 2016-09-01T16:42:51.779816+00:00 vcstest puppet-agent[2911]: (/Stage[main]/Main/Node[vcstest]/Vcsrepo[/home/vagrant/test]/ensure) created 2016-09-01T16:43:42.189035+00:00 vcstest puppet-agent[3466]: (/Stage[main]/Main/Node[vcstest]/Vcsrepo[/home/vagrant/test]/ensure) created I added unit tests for the vcsrepo type and then fixed the code. --- lib/puppet/type/vcsrepo.rb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lib') diff --git a/lib/puppet/type/vcsrepo.rb b/lib/puppet/type/vcsrepo.rb index e2ef0b7..f35bb18 100644 --- a/lib/puppet/type/vcsrepo.rb +++ b/lib/puppet/type/vcsrepo.rb @@ -71,6 +71,8 @@ Puppet::Type.newtype(:vcsrepo) do return is == :bare when :mirror return is == :mirror + when :absent + return is == :absent end end -- cgit v1.2.3