diff options
author | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-10-09 18:34:57 +0000 |
---|---|---|
committer | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-10-09 18:34:57 +0000 |
commit | 8f9264bcc30312cc927eac72c66415eae7b69e88 (patch) | |
tree | 2e455f1bb5b7ccad27e5d7d4ad02dc80d066d13e /lib | |
parent | 94484df1a8d00e0eae35cbe09c0e5d2ff4b16f49 (diff) | |
download | puppet-8f9264bcc30312cc927eac72c66415eae7b69e88.tar.gz puppet-8f9264bcc30312cc927eac72c66415eae7b69e88.tar.xz puppet-8f9264bcc30312cc927eac72c66415eae7b69e88.zip |
Fixing code from [1754] -- I stupidly did not even do a parse check, and I had to refactor the patch because parameters do not have code associated with their values.
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1755 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib')
-rwxr-xr-x | lib/puppet/provider/package/apt.rb | 12 | ||||
-rw-r--r-- | lib/puppet/type/package.rb | 26 |
2 files changed, 9 insertions, 29 deletions
diff --git a/lib/puppet/provider/package/apt.rb b/lib/puppet/provider/package/apt.rb index 5c6dc8916..d4edbb27b 100755 --- a/lib/puppet/provider/package/apt.rb +++ b/lib/puppet/provider/package/apt.rb @@ -41,8 +41,6 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg do end end - attr_accessor :keepconfig - # Install a package using 'apt-get'. This function needs to support # installing a specific version. def install @@ -63,12 +61,14 @@ Puppet::Type.type(:package).provide :apt, :parent => :dpkg do end keep = "" - if defined? @keepconfig - case @keepconfig - when true + if config = @model[:configfiles] + case config + when :keep keep = "-o 'DPkg::Options::=--force-confold'" - else + when :replace keep = "-o 'DPkg::Options::=--force-confnew'" + else + raise Puppet::Error, "Invalid 'configfiles' value %s" % config end end diff --git a/lib/puppet/type/package.rb b/lib/puppet/type/package.rb index 47b6331ea..f88981ffd 100644 --- a/lib/puppet/type/package.rb +++ b/lib/puppet/type/package.rb @@ -244,31 +244,11 @@ module Puppet newparam(:configfiles) do desc "Whether configfiles should be kept or replaced. Most packages - types do not support this parameter, but those that do will default - to keeping their configuration files." - - unless provider.respond_to?(:keepconfig=) - self.fail( - "Package provider %s does not support keeping the configuration files" % - @parent[:provider] - ) - end + types do not support this parameter." - # There is only a default for those that support this parameter. - defaultto do - if provider.respond_to?(:keepconfig) - :keep - else - nil - end - end + defaultto :keep - newvalue(:keep) do - provider.keepconfig = true - end - newvalue(:replace) do - provider.keepconfig = false - end + newvalues(:keep, :replace) end newparam(:category) do |