summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Turnbull <james@lovedthanlost.net>2008-06-15 12:31:23 +1000
committerJames Turnbull <james@lovedthanlost.net>2008-06-15 12:31:23 +1000
commit98e38a659a6eb9cdf0ee9e7ba6ff692483f25613 (patch)
treeac4e064dffbd087b1649c9929b472fcccbca373a
parent57945a588c942198d4827263b46476a477dce7d0 (diff)
downloadpuppet-98e38a659a6eb9cdf0ee9e7ba6ff692483f25613.tar.gz
puppet-98e38a659a6eb9cdf0ee9e7ba6ff692483f25613.tar.xz
puppet-98e38a659a6eb9cdf0ee9e7ba6ff692483f25613.zip
Adds support for keepconfig for the dpkg provider fixes #234
-rwxr-xr-xlib/puppet/provider/package/dpkg.rb17
1 files changed, 16 insertions, 1 deletions
diff --git a/lib/puppet/provider/package/dpkg.rb b/lib/puppet/provider/package/dpkg.rb
index 512170a73..b67cd2b76 100755
--- a/lib/puppet/provider/package/dpkg.rb
+++ b/lib/puppet/provider/package/dpkg.rb
@@ -53,7 +53,22 @@ Puppet::Type.type(:package).provide :dpkg, :parent => Puppet::Provider::Package
unless file = @resource[:source]
raise ArgumentError, "You cannot install dpkg packages without a source"
end
- dpkg "-i", file
+
+ args = []
+
+ if config = @resource[:configfiles]
+ case config
+ when :keep
+ args << '--force-confold'
+ when :replace
+ args << '--force-confnew'
+ else
+ raise Puppet::Error, "Invalid 'configfiles' value %s" % config
+ end
+ end
+ args << '-i' << file
+
+ dpkg(*args)
end
def update