diff options
author | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-03-11 21:48:15 +0000 |
---|---|---|
committer | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2006-03-11 21:48:15 +0000 |
commit | 414d364a6f337cc8e542dc107d8e51f625375db4 (patch) | |
tree | 576f7d87c4b83c7bed322711793ea6b9a2fde30d /lib/puppet | |
parent | 872892036ca8ca1b2ed503dbedd6b18f33f52abd (diff) | |
download | puppet-414d364a6f337cc8e542dc107d8e51f625375db4.tar.gz puppet-414d364a6f337cc8e542dc107d8e51f625375db4.tar.xz puppet-414d364a6f337cc8e542dc107d8e51f625375db4.zip |
Supporting rpm installs when a package source is specified
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@1004 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib/puppet')
-rwxr-xr-x | lib/puppet/type/package/rpm.rb | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/lib/puppet/type/package/rpm.rb b/lib/puppet/type/package/rpm.rb index 06ae3c51f..e0fa9d467 100755 --- a/lib/puppet/type/package/rpm.rb +++ b/lib/puppet/type/package/rpm.rb @@ -68,11 +68,18 @@ module Puppet return packages end - # we need package retrieval mechanisms before we can have package - # installation mechanisms... - #type.install = proc { |pkg| - # raise "installation not implemented yet" - #} + def install + source = nil + unless source = self[:source] + self.fail "RPMs must specify a package source" + end + + output = %x{rpm -i #{source} 2>&1} + + unless $? == 0 + raise Puppet::PackageError.new(output) + end + end def uninstall cmd = "rpm -e %s" % self[:name] |