ci(kitchen+travis): adjust matrix to add `3001`tags/v1.4.4
## Define the rest of the matrix based on Kitchen testing | ## Define the rest of the matrix based on Kitchen testing | ||||
# Make sure the instances listed below match up with | # Make sure the instances listed below match up with | ||||
# the `platforms` defined in `kitchen.yml` | # the `platforms` defined in `kitchen.yml` | ||||
- env: INSTANCE=v3000-py3-debian-10-3000-3-py3 | |||||
- env: INSTANCE=v3001-py3-debian-10-3001-py3 | |||||
# - env: INSTANCE=v3001-py3-debian-9-3001-py3 | |||||
- env: INSTANCE=v3001-py3-ubuntu-2004-3001-py3 | |||||
# - env: INSTANCE=v3001-py3-ubuntu-1804-3001-py3 | |||||
- env: INSTANCE=v3001-py3-centos-8-3001-py3 | |||||
# - env: INSTANCE=v3001-py3-centos-7-3001-py3 | |||||
- env: INSTANCE=v3001-py3-fedora-32-3001-py3 | |||||
# - env: INSTANCE=v3001-py3-fedora-31-3001-py3 | |||||
# - env: INSTANCE=v3001-py3-opensuse-leap-152-3001-py3 | |||||
# - env: INSTANCE=v3001-py3-amazonlinux-2-3001-py3 | |||||
- env: INSTANCE=v3001-py3-oraclelinux-8-3001-py3 | |||||
# - env: INSTANCE=v3001-py3-oraclelinux-7-3001-py3 | |||||
# - env: INSTANCE=v3000-py3-debian-10-3000-3-py3 | |||||
# - env: INSTANCE=v3000-py3-debian-9-3000-3-py3 | # - env: INSTANCE=v3000-py3-debian-9-3000-3-py3 | ||||
# - env: INSTANCE=v3000-py3-ubuntu-1804-3000-3-py3 | # - env: INSTANCE=v3000-py3-ubuntu-1804-3000-3-py3 | ||||
- env: INSTANCE=v3000-py3-centos-8-3000-3-py3 | |||||
# - env: INSTANCE=v3000-py3-centos-8-3000-3-py3 | |||||
# - env: INSTANCE=v3000-py3-centos-7-3000-3-py3 | # - env: INSTANCE=v3000-py3-centos-7-3000-3-py3 | ||||
- env: INSTANCE=v3000-py3-fedora-31-3000-3-py3 | - env: INSTANCE=v3000-py3-fedora-31-3000-3-py3 | ||||
- env: INSTANCE=v3000-py3-opensuse-leap-152-3000-3-py3 | - env: INSTANCE=v3000-py3-opensuse-leap-152-3000-3-py3 | ||||
- env: INSTANCE=v3000-py3-opensuse-leap-151-3000-3-py3 | |||||
- env: INSTANCE=v3000-py3-amazonlinux-2-3000-3-py3 | - env: INSTANCE=v3000-py3-amazonlinux-2-3000-3-py3 | ||||
# - env: INSTANCE=v3000-py3-oraclelinux-8-3000-3-py3 | |||||
- env: INSTANCE=v3000-py3-oraclelinux-7-3000-3-py3 | |||||
- env: INSTANCE=v3000-py2-ubuntu-1804-3000-3-py2 | - env: INSTANCE=v3000-py2-ubuntu-1804-3000-3-py2 | ||||
# - env: INSTANCE=v3000-py2-ubuntu-1604-3000-3-py2 | # - env: INSTANCE=v3000-py2-ubuntu-1604-3000-3-py2 | ||||
# - env: INSTANCE=v201902-py3-debian-10-2019-2-py3 | # - env: INSTANCE=v201902-py3-debian-10-2019-2-py3 | ||||
- env: INSTANCE=v201902-py3-ubuntu-1604-2019-2-py3 | - env: INSTANCE=v201902-py3-ubuntu-1604-2019-2-py3 | ||||
# - env: INSTANCE=v201902-py3-centos-8-2019-2-py3 | # - env: INSTANCE=v201902-py3-centos-8-2019-2-py3 | ||||
- env: INSTANCE=v201902-py3-centos-7-2019-2-py3 | - env: INSTANCE=v201902-py3-centos-7-2019-2-py3 | ||||
# - env: INSTANCE=v201902-py3-fedora-31-2019-2-py3 | |||||
# - env: INSTANCE=v201902-py3-opensuse-leap-152-2019-2-py3 | |||||
# - env: INSTANCE=v201902-py3-amazonlinux-2-2019-2-py3 | # - env: INSTANCE=v201902-py3-amazonlinux-2-2019-2-py3 | ||||
- env: INSTANCE=v201902-py2-centos-6-2019-2-py2 | - env: INSTANCE=v201902-py2-centos-6-2019-2-py2 | ||||
# - env: INSTANCE=v201902-py2-amazonlinux-1-2019-2-py2 | # - env: INSTANCE=v201902-py2-amazonlinux-1-2019-2-py2 |
name: salt | name: salt | ||||
os: Debian, Redhat, Suse, Arch, Gentoo, FreeBSD, Windows | |||||
os: Debian, Ubuntu, Raspbian, RedHat, Fedora, CentOS, Oracle, Amazon, Suse, openSUSE, Gentoo, Funtoo, Arch, Manjaro, FreeBSD, OpenBSD, Windows | |||||
os_family: Debian, Redhat, Suse, Arch, Gentoo, FreeBSD, Windows | os_family: Debian, Redhat, Suse, Arch, Gentoo, FreeBSD, Windows | ||||
version: 1.4.3 | version: 1.4.3 | ||||
release: 1 | release: 1 |
# Make sure the platforms listed below match up with | # Make sure the platforms listed below match up with | ||||
# the `env.matrix` instances defined in `.travis.yml` | # the `env.matrix` instances defined in `.travis.yml` | ||||
platforms: | platforms: | ||||
## SALT `3001` | |||||
- name: debian-10-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:debian-10 | |||||
- name: debian-9-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:debian-9 | |||||
- name: ubuntu-2004-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:ubuntu-20.04 | |||||
- name: ubuntu-1804-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:ubuntu-18.04 | |||||
- name: centos-8-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:centos-8 | |||||
- name: centos-7-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:centos-7 | |||||
- name: fedora-32-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:fedora-32 | |||||
- name: fedora-31-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:fedora-31 | |||||
- name: opensuse-leap-152-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:opensuse-leap-15.2 | |||||
run_command: /usr/lib/systemd/systemd | |||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.2`: | |||||
# => SCP did not finish successfully (255): (Net::SCP::Error) | |||||
transport: | |||||
max_ssh_sessions: 1 | |||||
- name: amazonlinux-2-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:amazonlinux-2 | |||||
- name: oraclelinux-8-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:oraclelinux-8 | |||||
- name: oraclelinux-7-3001-py3 | |||||
driver: | |||||
image: saltimages/salt-3001-py3:oraclelinux-7 | |||||
## SALT `3000.3` | ## SALT `3000.3` | ||||
- name: debian-10-3000-3-py3 | - name: debian-10-3000-3-py3 | ||||
driver: | driver: | ||||
# => SCP did not finish successfully (255): (Net::SCP::Error) | # => SCP did not finish successfully (255): (Net::SCP::Error) | ||||
transport: | transport: | ||||
max_ssh_sessions: 1 | max_ssh_sessions: 1 | ||||
- name: opensuse-leap-151-3000-3-py3 | |||||
driver: | |||||
image: netmanagers/salt-3000.3-py3:opensuse-leap-15.1 | |||||
run_command: /usr/lib/systemd/systemd | |||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.1`: | |||||
# => SCP did not finish successfully (255): (Net::SCP::Error) | |||||
transport: | |||||
max_ssh_sessions: 1 | |||||
- name: amazonlinux-2-3000-3-py3 | - name: amazonlinux-2-3000-3-py3 | ||||
driver: | driver: | ||||
image: saltimages/salt-3000.3-py3:amazonlinux-2 | image: saltimages/salt-3000.3-py3:amazonlinux-2 | ||||
- name: oraclelinux-8-3000-3-py3 | |||||
driver: | |||||
image: saltimages/salt-3000.3-py3:oraclelinux-8 | |||||
- name: oraclelinux-7-3000-3-py3 | |||||
driver: | |||||
image: saltimages/salt-3000.3-py3:oraclelinux-7 | |||||
- name: ubuntu-1804-3000-3-py2 | - name: ubuntu-1804-3000-3-py2 | ||||
driver: | driver: | ||||
image: saltimages/salt-3000.3-py2:ubuntu-18.04 | image: saltimages/salt-3000.3-py2:ubuntu-18.04 | ||||
- name: centos-7-2019-2-py3 | - name: centos-7-2019-2-py3 | ||||
driver: | driver: | ||||
image: saltimages/salt-2019.2-py3:centos-7 | image: saltimages/salt-2019.2-py3:centos-7 | ||||
- name: fedora-31-2019-2-py3 | |||||
driver: | |||||
image: saltimages/salt-2019.2-py3:fedora-31 | |||||
- name: opensuse-leap-152-2019-2-py3 | |||||
driver: | |||||
image: saltimages/salt-2019.2-py3:opensuse-leap-15.2 | |||||
run_command: /usr/lib/systemd/systemd | |||||
# Workaround to avoid intermittent failures on `opensuse-leap-15.2`: | |||||
# => SCP did not finish successfully (255): (Net::SCP::Error) | |||||
transport: | |||||
max_ssh_sessions: 1 | |||||
- name: amazonlinux-2-2019-2-py3 | - name: amazonlinux-2-2019-2-py3 | ||||
driver: | driver: | ||||
image: saltimages/salt-2019.2-py3:amazonlinux-2 | image: saltimages/salt-2019.2-py3:amazonlinux-2 | ||||
- cli | - cli | ||||
suites: | suites: | ||||
- name: v3001-py3 | |||||
includes: | |||||
- debian-10-3001-py3 | |||||
- debian-9-3001-py3 | |||||
- ubuntu-2004-3001-py3 | |||||
- ubuntu-1804-3001-py3 | |||||
- centos-8-3001-py3 | |||||
- centos-7-3001-py3 | |||||
- fedora-32-3001-py3 | |||||
- fedora-31-3001-py3 | |||||
- opensuse-leap-152-3001-py3 | |||||
- amazonlinux-2-3001-py3 | |||||
- oraclelinux-8-3001-py3 | |||||
- oraclelinux-7-3001-py3 | |||||
provisioner: | |||||
state_top: | |||||
base: | |||||
'*': | |||||
- salt.pkgrepo | |||||
- salt.master | |||||
- salt.minion | |||||
pillars: | |||||
top.sls: | |||||
base: | |||||
'*': | |||||
- salt | |||||
- v3001-py3 | |||||
pillars_from_files: | |||||
salt.sls: test/salt/pillar/salt.sls | |||||
v3001-py3.sls: test/salt/pillar/v3001-py3.sls | |||||
verifier: | |||||
inspec_tests: | |||||
- path: test/integration/v3001-py3 | |||||
- name: v3000-py3 | - name: v3000-py3 | ||||
includes: | includes: | ||||
- debian-10-3000-3-py3 | - debian-10-3000-3-py3 | ||||
- centos-7-3000-3-py3 | - centos-7-3000-3-py3 | ||||
- fedora-31-3000-3-py3 | - fedora-31-3000-3-py3 | ||||
- opensuse-leap-152-3000-3-py3 | - opensuse-leap-152-3000-3-py3 | ||||
- opensuse-leap-151-3000-3-py3 | |||||
- amazonlinux-2-3000-3-py3 | - amazonlinux-2-3000-3-py3 | ||||
- oraclelinux-8-3000-3-py3 | |||||
- oraclelinux-7-3000-3-py3 | |||||
provisioner: | provisioner: | ||||
state_top: | state_top: | ||||
base: | base: | ||||
- ubuntu-1604-2019-2-py3 | - ubuntu-1604-2019-2-py3 | ||||
- centos-8-2019-2-py3 | - centos-8-2019-2-py3 | ||||
- centos-7-2019-2-py3 | - centos-7-2019-2-py3 | ||||
- fedora-31-2019-2-py3 | |||||
- opensuse-leap-152-2019-2-py3 | |||||
- amazonlinux-2-2019-2-py3 | - amazonlinux-2-2019-2-py3 | ||||
provisioner: | provisioner: | ||||
state_top: | state_top: |
- platform-name: suse | - platform-name: suse | ||||
- platform-name: freebsd | - platform-name: freebsd | ||||
- platform-name: amazon | - platform-name: amazon | ||||
- platform-name: oracle | |||||
- platform-name: arch | - platform-name: arch |
- platform-name: suse | - platform-name: suse | ||||
- platform-name: freebsd | - platform-name: freebsd | ||||
- platform-name: amazon | - platform-name: amazon | ||||
- platform-name: oracle | |||||
- platform-name: arch | - platform-name: arch |
- platform-name: suse | - platform-name: suse | ||||
- platform-name: freebsd | - platform-name: freebsd | ||||
- platform-name: amazon | - platform-name: amazon | ||||
- platform-name: oracle | |||||
- platform-name: arch | - platform-name: arch |
- platform-name: suse | - platform-name: suse | ||||
- platform-name: freebsd | - platform-name: freebsd | ||||
- platform-name: amazon | - platform-name: amazon | ||||
- platform-name: oracle | |||||
- platform-name: arch | - platform-name: arch |
# InSpec Profile: `v3001-py3` | |||||
This shows the implementation of the `v3001-py3` InSpec [profile](https://github.com/inspec/inspec/blob/master/docs/profiles.md). | |||||
## Verify a profile | |||||
InSpec ships with built-in features to verify a profile structure. | |||||
```bash | |||||
$ inspec check v3001-py3 | |||||
Summary | |||||
------- | |||||
Location: v3001-py3 | |||||
Profile: profile | |||||
Controls: 4 | |||||
Timestamp: 2019-06-24T23:09:01+00:00 | |||||
Valid: true | |||||
Errors | |||||
------ | |||||
Warnings | |||||
-------- | |||||
``` | |||||
## Execute a profile | |||||
To run all **supported** controls on a local machine use `inspec exec /path/to/profile`. | |||||
```bash | |||||
$ inspec exec v3001-py3 | |||||
.. | |||||
Finished in 0.0025 seconds (files took 0.12449 seconds to load) | |||||
8 examples, 0 failures | |||||
``` | |||||
## Execute a specific control from a profile | |||||
To run one control from the profile use `inspec exec /path/to/profile --controls name`. | |||||
```bash | |||||
$ inspec exec v3001-py3 --controls package | |||||
. | |||||
Finished in 0.0025 seconds (files took 0.12449 seconds to load) | |||||
1 examples, 0 failures | |||||
``` | |||||
See an [example control here](https://github.com/inspec/inspec/blob/master/examples/profile/controls/example.rb). |
# frozen_string_literal: true | |||||
control 'salt packages' do | |||||
title 'should be installed' | |||||
version = '3001' | |||||
%w[ | |||||
salt-master | |||||
salt-minion | |||||
].each do |p| | |||||
describe package(p) do | |||||
it { should be_installed } | |||||
its('version') { should match(/^#{version}/) } | |||||
end | |||||
end | |||||
end |
# frozen_string_literal: true | |||||
control 'salt services' do | |||||
title 'should be running' | |||||
%w[ | |||||
salt-master | |||||
salt-minion | |||||
].each do |p| | |||||
describe service(p) do | |||||
it { should be_installed } | |||||
it { should be_enabled } | |||||
it { should be_running } | |||||
end | |||||
end | |||||
end |
# -*- coding: utf-8 -*- | |||||
# vim: ft=yaml | |||||
--- | |||||
name: v3001-py3 | |||||
title: salt formula | |||||
maintainer: SaltStack Formulas | |||||
license: Apache-2.0 | |||||
summary: Verify that Salt `v3001-py3` is setup and configured | |||||
supports: | |||||
- platform-name: debian | |||||
- platform-name: ubuntu | |||||
- platform-name: centos | |||||
- platform-name: fedora | |||||
- platform-name: opensuse | |||||
- platform-name: suse | |||||
- platform-name: freebsd | |||||
- platform-name: amazon | |||||
- platform-name: oracle | |||||
- platform-name: arch |
# -*- coding: utf-8 -*- | |||||
# vim: ft=yaml | |||||
--- | |||||
salt: | |||||
release: '3001' | |||||
py_ver: 'py3' |