summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Smith <tsmith@chef.io>2017-06-29 10:37:21 -0700
committerGitHub <noreply@github.com>2017-06-29 10:37:21 -0700
commitefde68e7c761e6b5e1f58089175ae3a95473e60e (patch)
tree2c23de9e79d496b18073ef4c6f18638f3b68fd09
parent6b77bee27738f720ce25df194cd3e778ea3279d1 (diff)
parentf7b1123ebcaae18bc7164362f0edda7f53fe8cd5 (diff)
downloadohai-efde68e7c761e6b5e1f58089175ae3a95473e60e.tar.gz
Merge pull request #1020 from chef/pr/1016
PR #1016 with updates
-rw-r--r--lib/ohai/plugins/packages.rb10
-rw-r--r--spec/data/plugins/lslpp.output1
-rw-r--r--spec/unit/plugins/packages_spec.rb4
3 files changed, 13 insertions, 2 deletions
diff --git a/lib/ohai/plugins/packages.rb b/lib/ohai/plugins/packages.rb
index 52a87c8b..f041143b 100644
--- a/lib/ohai/plugins/packages.rb
+++ b/lib/ohai/plugins/packages.rb
@@ -94,8 +94,14 @@ Ohai.plugin(:Packages) do
# Package Name:Fileset:Level
# On aix, filesets are packages and levels are versions
pkgs.each do |pkg|
- _, name, version = pkg.split(":")
- packages[name] = { "version" => version }
+ name, fileset, version, _, _, _, pkg_type = pkg.split(":")
+ if pkg_type == "R"
+ # RPM
+ packages[name] = { "version" => version }
+ else
+ # LPP
+ packages[fileset] = { "version" => version }
+ end
end
end
diff --git a/spec/data/plugins/lslpp.output b/spec/data/plugins/lslpp.output
index 0175eacf..7bd592ee 100644
--- a/spec/data/plugins/lslpp.output
+++ b/spec/data/plugins/lslpp.output
@@ -47,3 +47,4 @@ devices.common.IBM.ethernet:devices.common.IBM.ethernet.rte:7.1.1.16: : :C:F:Com
devices.common.IBM.fc:devices.common.IBM.fc.hba-api:7.1.1.16: : :C:F:Common HBA API Library: : : : : : :0:0:/:1228
devices.common.IBM.fc:devices.common.IBM.fc.rte:7.1.1.16: : :C:F:Common IBM FC Software: : : : : : :0:0:/:1228
devices.common.IBM.fda:devices.common.IBM.fda.diag:7.1.0.0: : :C: :Common Diskette Adapter and Device Diagnostics: : : : : : :0:0:/:1036
+wget:wget-1.9.1-3:1.9.1-3: : :C:R:A utility for retrieving files using the HTTP or FTP protocols.: :/bin/rpm -e wget: : : : :0: :/opt/freeware:Wed Nov 5 01:37:09 MST 2014
diff --git a/spec/unit/plugins/packages_spec.rb b/spec/unit/plugins/packages_spec.rb
index ad8c21a3..a97c3280 100644
--- a/spec/unit/plugins/packages_spec.rb
+++ b/spec/unit/plugins/packages_spec.rb
@@ -210,6 +210,10 @@ describe Ohai::System, "plugin packages" do
it "gets packages with version" do
expect(plugin[:packages]["chef"][:version]).to eq("12.5.1.1")
end
+
+ it "properly parses package names for RPMs" do
+ expect(plugin[:packages]["wget"][:version]).to eq("1.9.1-3")
+ end
end
context "on freebsd" do