inspec/docs/resources/packages.md.erb
Jerry Aldrich d96a6affa7 packages resource: Add architectures support (#2469)
This adds support for `architectures` to the `packages` resource.

Example:

```
describe packages(/compat-libstdc++-33/) do
  its('architectures') { should include 'x86_64' }
  its('architectures') { should include 'i686' }
end
```

This also adds documentation for the `packages` resource

Signed-off-by: Jerry Aldrich <jerryaldrichiii@gmail.com>
2018-01-25 23:57:34 -08:00

66 lines
1.6 KiB
Text

---
title: About the packages Resource
---
# packages
Use the `packages` InSpec audit resource to test the properties of multiple packages on the system.
<br>
## Syntax
A `packages` resource block declares a regular expression search to select packages
describe packages(/name/) do
its('statuses') { should cmp 'installed' }
end
<br>
## Examples
The following examples show how to use this InSpec audit resource.
### Verify that no `xserver` packages are installed
describe package(/xserver/) do
its('statuses') { should_not cmp 'installed' }
end
### Verify all `openssl` packages match a certain version
describe package(/openssl/) do
its('versions') { should cmp '1.0.1e-42.el7' }
end
### Verify that both the `i686` and `x86_64` versions of `libgcc` are installed
describe package(/libgcc/) do
its('architectures') { should include 'x86_64' }
its('architectures') { should include 'i686' }
end
<br>
## Matchers
This InSpec audit resource has the following matchers. For a full list of available matchers please visit our [matchers page](https://www.inspec.io/docs/reference/matchers/).
### statuses
The `statuses` matcher tests if packages are installed on the system
its('statuses') { should cmp 'installed' }
### versions
The `versions` matcher tests the versions of the packages installed on the system
its('versions') { should cmp '3.4.0.2-4.el7' }
### architectures
The `architectures` matcher tests the architecture of packages installed on the system
its('architectures') { should include 'i686' }