Class: Inspec::Resources::SolarisPkg
- Inherits:
-
PkgManagement
- Object
- PkgManagement
- Inspec::Resources::SolarisPkg
- Defined in:
- lib/resources/package.rb
Overview
Solaris
Instance Attribute Summary
Attributes inherited from PkgManagement
Instance Method Summary collapse
- #info(package_name) ⇒ Object
-
#solaris10_info(package_name) ⇒ Object
solaris 10.
-
#solaris11_info(package_name) ⇒ Object
solaris 11.
Methods inherited from PkgManagement
Constructor Details
This class inherits a constructor from Inspec::Resources::PkgManagement
Instance Method Details
#info(package_name) ⇒ Object
213 214 215 216 217 218 219 |
# File 'lib/resources/package.rb', line 213 def info(package_name) if inspec.os[:release].to_i <= 10 solaris10_info(package_name) else solaris11_info(package_name) end end |
#solaris10_info(package_name) ⇒ Object
solaris 10
222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 |
# File 'lib/resources/package.rb', line 222 def solaris10_info(package_name) cmd = inspec.command("pkginfo -l #{package_name}") return nil if cmd.exit_status.to_i != 0 params = SimpleConfig.new( cmd.stdout.chomp, assignment_re: /^\s*([^:]*?)\s*:\s*(.*?)\s*$/, multiple_values: false, ).params # parse 11.10.0,REV=2006.05.18.01.46 v = params['VERSION'].split(',') { name: params['PKGINST'], installed: true, version: v[0] + '-' + v[1].split('=')[1], type: 'pkg', } end |
#solaris11_info(package_name) ⇒ Object
solaris 11
243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 |
# File 'lib/resources/package.rb', line 243 def solaris11_info(package_name) cmd = inspec.command("pkg info #{package_name}") return nil if cmd.exit_status.to_i != 0 params = SimpleConfig.new( cmd.stdout.chomp, assignment_re: /^\s*([^:]*?)\s*:\s*(.*?)\s*$/, multiple_values: false, ).params { name: params['Name'], installed: true, # 0.5.11-0.175.3.1.0.5.0 version: "#{params['Version']}-#{params['Branch']}", type: 'pkg', } end |