Use the chocolatey_package Chef InSpec audit resource to test if the named Chocolatey package and/or package version is installed on the system.
This resource is distributed along with Chef InSpec itself. You can use it automatically.
This resource first became available in v2.1.30 of InSpec.
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 resourceThe following examples show how to use this Chef InSpec audit resource
describe chocolatey_package('nssm') do
it { should be_installed }
its('version') { should eq '2.1.0' }
end
For a full list of available matchers, please visit our matchers page.
The be_installed matcher tests if the named package is installed at all.
it { should be_installed }
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.
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/chocolatey_package/