diff options
-rw-r--r-- | lib/puppet/provider/package/aptrpm.rb | 17 | ||||
-rwxr-xr-x | lib/puppet/provider/package/rpm.rb | 17 | ||||
-rw-r--r-- | lib/puppet/provider/package/urpmi.rb | 10 | ||||
-rwxr-xr-x | lib/puppet/provider/package/yum.rb | 10 |
4 files changed, 38 insertions, 16 deletions
diff --git a/lib/puppet/provider/package/aptrpm.rb b/lib/puppet/provider/package/aptrpm.rb index aa7d1d2cb..12dd7f378 100644 --- a/lib/puppet/provider/package/aptrpm.rb +++ b/lib/puppet/provider/package/aptrpm.rb @@ -10,14 +10,15 @@ Puppet::Type.type(:package).provide :aptrpm, :parent => :rpm, :source => :rpm do commands :aptcache => "apt-cache" commands :rpm => "rpm" - confine :true => begin - rpm('-ql', 'rpm') - rescue Puppet::ExecutionFailure - false - else - true - end - + if command('rpm') + confine :true => begin + rpm('-ql', 'rpm') + rescue Puppet::ExecutionFailure + false + else + true + end + end # Install a package using 'apt-get'. This function needs to support # installing a specific version. diff --git a/lib/puppet/provider/package/rpm.rb b/lib/puppet/provider/package/rpm.rb index 0787f7e8c..f7f3237e6 100755 --- a/lib/puppet/provider/package/rpm.rb +++ b/lib/puppet/provider/package/rpm.rb @@ -11,14 +11,15 @@ Puppet::Type.type(:package).provide :rpm, :source => :rpm, :parent => Puppet::Pr commands :rpm => "rpm" - confine :true => begin - rpm('-ql', 'rpm') - rescue Puppet::ExecutionFailure - false - else - true - end - + if command('rpm') + confine :true => begin + rpm('-ql', 'rpm') + rescue Puppet::ExecutionFailure + false + else + true + end + end def self.instances packages = [] diff --git a/lib/puppet/provider/package/urpmi.rb b/lib/puppet/provider/package/urpmi.rb index 4a7de233c..f19c6f41f 100644 --- a/lib/puppet/provider/package/urpmi.rb +++ b/lib/puppet/provider/package/urpmi.rb @@ -2,6 +2,16 @@ Puppet::Type.type(:package).provide :urpmi, :parent => :rpm, :source => :rpm do desc "Support via ``urpmi``." commands :urpmi => "urpmi", :rpm => "rpm" + if command('rpm') + confine :true => begin + rpm('-ql', 'rpm') + rescue Puppet::ExecutionFailure + false + else + true + end + end + defaultfor :operatingsystem => [:mandriva, :mandrake] has_feature :versionable diff --git a/lib/puppet/provider/package/yum.rb b/lib/puppet/provider/package/yum.rb index f6c5ec401..9d4d4c8bb 100755 --- a/lib/puppet/provider/package/yum.rb +++ b/lib/puppet/provider/package/yum.rb @@ -5,6 +5,16 @@ Puppet::Type.type(:package).provide :yum, :parent => :rpm, :source => :rpm do commands :yum => "yum", :rpm => "rpm" + if command('rpm') + confine :true => begin + rpm('-ql', 'rpm') + rescue Puppet::ExecutionFailure + false + else + true + end + end + defaultfor :operatingsystem => [:fedora, :centos, :redhat] def install |