inspec/docs/resources/chocolatey_package.md.erb
David Alexander 3b97e16b97 New Resource: Chocolatey Package (#2793)
* Adds chocolatey package resource
* Adds docs for chocolatey_package resource
* Differentiate chocolatey package from windows feature

Suggested by @frezbo

Signed-off-by: David Alexander <opensource@thelonelyghost.com>
2018-04-05 08:54:27 -04:00

58 lines
1.6 KiB
Text

---
title: About the chocolatey_package Resource
platform: windows
---
# chocolatey_package
Use the `chocolatey_package` InSpec audit resource to test if the named [Chocolatey](https://chocolatey.org/) package and/or package version is installed on the system.
<br>
## Syntax
A `chocolatey_package` resource block declares the name of a Chocolatey package to be tested:
describe chocolatey_package('name') do
it { should be_installed }
end
where
* `('name')` must specify the (case-sensitive) name of a package, such as `'nssm'`
* `be_installed` is a valid matcher for this resource
<br>
## Examples
The following examples show how to use this InSpec audit resource
### Test if NSSM version 2.1.0 is installed
describe chocolatey_package('nssm') do
it { should be_installed }
its('version') { should eq '2.1.0' }
end
## Matchers
For a full list of available matchers, please visit our [matchers page](https://www.inspec.io/docs/reference/matchers).
### be_installed
The `be_installed` matcher tests if the named package is installed at all.
it { should be_installed }
### version
The `version` matcher tests if the named package version is on the system:
its('version') { should eq '2.1.0' }
You can also use the `cmp OPERATOR` matcher to perform comparisons using the version attribute:
its('version') { should cmp >= '1.93.4-13debug84' }
`cmp` understands version numbers using Gem::Version, and can use the operators `==, <, <=, >=, and >`. It will compare versions by each segment, not as a string - so '7.4' is smaller than '7.30', for example.