Refactor is_pkg_installed function
* Should return false instead of errors * Correct package status processing Change-Id: I95139c36486a42306f61e7b08cc0cafcd6bffca1 Closes-Bug: 1542501
This commit is contained in:
parent
a836a98261
commit
6502053cc3
|
@ -6,14 +6,17 @@ module Puppet::Parser::Functions
|
|||
Returns if given package is installed
|
||||
ENDOFDOC
|
||||
) do |args|
|
||||
pkgname = args[0]
|
||||
|
||||
parameters = { :name => pkgname }
|
||||
res = Puppet::Type.type(:package).new(parameters)
|
||||
|
||||
query = res.provider.query
|
||||
|
||||
return false if query.nil?
|
||||
query[:ensure].match(/[-.]|\d+|[^-.\d]+/) != 0
|
||||
begin
|
||||
pkg_name = args[0]
|
||||
parameters = { :name => pkg_name }
|
||||
res = Puppet::Type.type(:package).new(parameters)
|
||||
query = res.provider.query
|
||||
break false unless query.is_a? Hash
|
||||
break false unless query[:ensure]
|
||||
break false if [ :absent, :purged ].include? query[:ensure]
|
||||
true
|
||||
rescue
|
||||
false
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue