summaryrefslogtreecommitdiffstats
path: root/lib/puppet
diff options
context:
space:
mode:
authorluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2007-08-07 02:38:45 +0000
committerluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2007-08-07 02:38:45 +0000
commitb84015af897650aaebdb69674c4be137ea066d8d (patch)
tree70c840a70b30a6a8e14a573ad227debefd94049c /lib/puppet
parentaaf5959fe3e9ff90d7288bb1ba8805bad2e7d05a (diff)
downloadpuppet-b84015af897650aaebdb69674c4be137ea066d8d.tar.gz
puppet-b84015af897650aaebdb69674c4be137ea066d8d.tar.xz
puppet-b84015af897650aaebdb69674c4be137ea066d8d.zip
The last set of bug-fixes before the next release. This commit just fixes a couple of problems that resulted when I changed the Provider#initialize method to not duplicate its argument, which was necessary for ParsedFile.
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2753 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib/puppet')
-rw-r--r--lib/puppet/provider.rb2
-rwxr-xr-xlib/puppet/provider/package/dpkg.rb2
-rwxr-xr-xlib/puppet/provider/package/openbsd.rb2
-rwxr-xr-xlib/puppet/provider/package/rpm.rb4
-rwxr-xr-xlib/puppet/provider/package/sun.rb2
5 files changed, 5 insertions, 7 deletions
diff --git a/lib/puppet/provider.rb b/lib/puppet/provider.rb
index b836887e9..5a38f7f20 100644
--- a/lib/puppet/provider.rb
+++ b/lib/puppet/provider.rb
@@ -356,7 +356,7 @@ class Puppet::Provider
elsif self.resource
resource.name
else
- raise Puppet::DevError, "No resource and no name in property hash"
+ raise Puppet::DevError, "No resource and no name in property hash in %s instance" % self.class.name
end
end
diff --git a/lib/puppet/provider/package/dpkg.rb b/lib/puppet/provider/package/dpkg.rb
index a739f38e2..d2f7048b9 100755
--- a/lib/puppet/provider/package/dpkg.rb
+++ b/lib/puppet/provider/package/dpkg.rb
@@ -24,7 +24,7 @@ Puppet::Type.type(:package).provide :dpkg, :parent => Puppet::Provider::Package
# now turn each returned line into a package object
process.each { |line|
if match = regex.match(line)
- hash.clear
+ hash = {}
fields.zip(match.captures) { |field,value|
hash[field] = value
diff --git a/lib/puppet/provider/package/openbsd.rb b/lib/puppet/provider/package/openbsd.rb
index 34739dc08..11662abe8 100755
--- a/lib/puppet/provider/package/openbsd.rb
+++ b/lib/puppet/provider/package/openbsd.rb
@@ -21,7 +21,6 @@ Puppet::Type.type(:package).provide :openbsd, :parent => Puppet::Provider::Packa
# now turn each returned line into a package object
process.each { |line|
- hash.clear
if match = regex.match(line)
fields.zip(match.captures) { |field,value|
hash[field] = value
@@ -32,6 +31,7 @@ Puppet::Type.type(:package).provide :openbsd, :parent => Puppet::Provider::Packa
hash[:provider] = self.name
packages << new(hash)
+ hash = {}
else
# Print a warning on lines we can't match, but move
# on, since it should be non-fatal
diff --git a/lib/puppet/provider/package/rpm.rb b/lib/puppet/provider/package/rpm.rb
index f7f3237e6..a31e4edf6 100755
--- a/lib/puppet/provider/package/rpm.rb
+++ b/lib/puppet/provider/package/rpm.rb
@@ -30,13 +30,11 @@ Puppet::Type.type(:package).provide :rpm, :source => :rpm, :parent => Puppet::Pr
# our regex for matching dpkg output
regex = %r{^(\S+)\s+(\S+)}
fields = [:name, :ensure]
- hash = {}
# now turn each returned line into a package object
process.each { |line|
if match = regex.match(line)
- hash.clear
-
+ hash = {}
fields.zip(match.captures) { |field,value|
hash[field] = value
}
diff --git a/lib/puppet/provider/package/sun.rb b/lib/puppet/provider/package/sun.rb
index 8fe25bb1a..92a5d0ef0 100755
--- a/lib/puppet/provider/package/sun.rb
+++ b/lib/puppet/provider/package/sun.rb
@@ -43,7 +43,7 @@ Puppet::Type.type(:package).provide :sun, :parent => Puppet::Provider::Package d
hash[:provider] = :sun
packages << new(hash)
- hash.clear
+ hash = {}
when /\s*(\w+):\s+(.+)/:
name = $1
value = $2