diff options
| author | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-09-05 17:04:55 +0000 |
|---|---|---|
| committer | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-09-05 17:04:55 +0000 |
| commit | b36df181f4f2064b3dbbce861912262594044b14 (patch) | |
| tree | 00dcedd7056780f108fd61bb5b0b04b393dc88a4 /lib | |
| parent | 47c86e5571afe1ea68c68fd1353d71f7cb9bdb76 (diff) | |
| download | puppet-b36df181f4f2064b3dbbce861912262594044b14.tar.gz puppet-b36df181f4f2064b3dbbce861912262594044b14.tar.xz puppet-b36df181f4f2064b3dbbce861912262594044b14.zip | |
A small fix to the install/update aspects of packaging.
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1560 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib')
| -rwxr-xr-x | lib/puppet/provider/package/gem.rb | 6 | ||||
| -rw-r--r-- | lib/puppet/type/package.rb | 37 |
2 files changed, 14 insertions, 29 deletions
diff --git a/lib/puppet/provider/package/gem.rb b/lib/puppet/provider/package/gem.rb index f6c84c23c..67d5e37c4 100755 --- a/lib/puppet/provider/package/gem.rb +++ b/lib/puppet/provider/package/gem.rb @@ -62,7 +62,7 @@ Puppet::Type.type(:package).provide :gem do def install(useversion = true) command = "#{command(:gem)} install " if (! @model.should(:ensure).is_a? Symbol) and useversion - command += "-v %s " % @model[:ensure] + command += "-v %s " % @model.should(:ensure) end if source = @model[:source] command += source @@ -101,6 +101,10 @@ Puppet::Type.type(:package).provide :gem do def update self.install(false) end + + def versionable? + true + end end # $Id$ diff --git a/lib/puppet/type/package.rb b/lib/puppet/type/package.rb index b23ee2622..749c9e76a 100644 --- a/lib/puppet/type/package.rb +++ b/lib/puppet/type/package.rb @@ -59,9 +59,9 @@ module Puppet end if current == :absent - return :package_installed + :package_installed else - return :package_changed + :package_changed end end @@ -72,16 +72,17 @@ module Puppet @parent[:provider] ) end - method = if self.is == :absent - :install - else - :update - end begin - provider.send(method) + provider.install rescue => detail self.fail "Could not update: %s" % detail end + + if self.is == :absent + :package_installed + else + :package_changed + end end @@ -154,26 +155,6 @@ module Puppet def retrieve @is = @parent.retrieve end - - def sync - value = self.should - unless value.is_a?(Symbol) - value = value.intern - end - # If we're a normal value, then just pass to the parent method - if self.class.values.include?(value) - #self.info "setting %s" % value - super - else - #self.info "updating from %s" % value - provider.update - if self.is == :absent - return :package_installed - else - return :package_updated - end - end - end end newparam(:name) do |
