lib/specinfra/command/debian/base/package.rb in specinfra-2.66.7 vs lib/specinfra/command/debian/base/package.rb in specinfra-2.66.8
- old
+ new
@@ -1,11 +1,11 @@
class Specinfra::Command::Debian::Base::Package < Specinfra::Command::Linux::Base::Package
class << self
def check_is_installed(package, version=nil)
escaped_package = escape(package)
if version
- cmd = "dpkg-query -f '${Status} ${Version}' -W #{escaped_package} | grep -E '^(install|hold) ok installed #{escape(version)}$'"
+ cmd = "dpkg-query -f '${Status} ${Version}' -W #{escaped_package} | grep -E '^(install|hold) ok installed #{Regexp.escape(escape(version))}$'"
else
cmd = "dpkg-query -f '${Status}' -W #{escaped_package} | grep -E '^(install|hold) ok installed$'"
end
cmd
end
@@ -16,10 +16,10 @@
if version
full_package = "#{package}=#{version}"
else
full_package = package
end
- "DEBIAN_FRONTEND='noninteractive' apt-get -y -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' #{option} install #{full_package}"
+ "DEBIAN_FRONTEND='noninteractive' apt-get -y -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' #{option} install #{escape(full_package)}"
end
def get_version(package, opts=nil)
"dpkg-query -f '${Status} ${Version}' -W #{package} | sed -n 's/^install ok installed //p'"
end