podman_container resource
Use the podman_container Chef InSpec audit resource to test the configuration of Podman containers.
Availability
Install
This resource is distributed with Chef InSpec and is automatically available for use.
Syntax
Use the podman_container Chef InSpec audit resource to test the properties of a Podman container.
describe podman_container("sweet_mendeleev") do it { should exist } it { should be_running } its("id") { should eq "591270d8d80d26671fd6ed622f367fbe19004d16e3b519c292313feb5f22e7f7" } its("image") { should eq "docker.io/library/nginx:latest" } its("labels") { should include "maintainer"=>"NGINX Docker Maintainers <docker-maint@nginx.com>" } its("ports") { should eq nil } end Resource Parameter Examples
name
The container name can be provided with the name resource parameter.
describe podman_container(name: 'an-echo-server') do it { should exist } it { should be_running } end container ID
Alternatively, you can pass the container ID.
describe podman_container(id: '71b5df59442b') do it { should exist } it { should be_running } end Properties
Property Examples
The following examples show how to use this Chef InSpec resource.
id
The id property tests the container ID.
its('id') { should eq '71b5df59...442b' } image
The image property tests the value of the container image.
its('image') { should eq 'docker.io/library/nginx:latest' } labels
The labels property tests the value of container image labels.
its('labels') { should eq "maintainer" => "NGINX Docker Maintainers <docker-maint@nginx.com>" } ports
The ports property tests the value of the Podmans ports.
its('ports') { should eq '0.0.0.0:1234->1234/tcp' } command
The command property tests the value of the container run command.
its('command') { should eq 'nc -ll -p 1234 -e /bin/cat' } Matchers
For a full list of available matchers, see our Universal Matchers page. The specific matchers of this resource are: exist and be_running.
exist
The exist matcher specifies if the container exists.
it { should exist } be_running
The be_running matcher checks if the container is running.
it { should be_running } Examples
The following examples show how to use this Chef InSpec audit resource.
Ensures container exists
The below test passes if the container sweet_mendeleev exists as part of the Podman instances.
describe podman_container('sweet_mendeleev') do it { should exist } end Ensures container is in running status
The below test passes if the container sweet_mendeleev exists as part of the Podman instances and the status is running.
describe podman_container('sweet_mendeleev') do it { should be_running } end