|
|
@@ -1,104 +1,200 @@ |
|
|
|
# -*- coding: utf-8 -*- |
|
|
|
# vim: ft=yaml |
|
|
|
--- |
|
|
|
# For help on this file's format, see https://kitchen.ci/ |
|
|
|
driver: |
|
|
|
name: docker |
|
|
|
|
|
|
|
driver_config: |
|
|
|
use_sudo: false |
|
|
|
privileged: true |
|
|
|
provision_command: mkdir -p /run/sshd |
|
|
|
run_command: /lib/systemd/systemd |
|
|
|
|
|
|
|
# Make sure the platforms listed below match up with |
|
|
|
# the `env.matrix` instances defined in `.travis.yml` |
|
|
|
platforms: |
|
|
|
# The `run_command` used for each platform is required to |
|
|
|
# test `systemd` services in docker |
|
|
|
# Latest distros |
|
|
|
- name: debian-9 |
|
|
|
driver_config: |
|
|
|
image: debian:9 |
|
|
|
run_command: /lib/systemd/systemd |
|
|
|
provision_command: |
|
|
|
- apt-get update && apt-get install -y udev |
|
|
|
- name: debian-8 |
|
|
|
driver_config: |
|
|
|
image: debian:8 |
|
|
|
run_command: /lib/systemd/systemd |
|
|
|
provision_command: |
|
|
|
- apt-get update && apt-get install -y udev |
|
|
|
- name: ubuntu-18.04 |
|
|
|
driver_config: |
|
|
|
image: ubuntu:18.04 |
|
|
|
run_command: /lib/systemd/systemd |
|
|
|
provision_command: |
|
|
|
- apt-get update && apt-get install -y udev |
|
|
|
- name: ubuntu-16.04 |
|
|
|
driver_config: |
|
|
|
image: ubuntu:16.04 |
|
|
|
run_command: /lib/systemd/systemd |
|
|
|
provision_command: |
|
|
|
- apt-get update && apt-get install -y udev |
|
|
|
- name: centos-7 |
|
|
|
driver_config: |
|
|
|
image: centos:7 |
|
|
|
run_command: /usr/lib/systemd/systemd |
|
|
|
# - name: centos-6 |
|
|
|
# driver_config: |
|
|
|
# image: centos:6 |
|
|
|
# run_command: /usr/lib/systemd/systemd |
|
|
|
- name: fedora |
|
|
|
driver_config: |
|
|
|
image: fedora |
|
|
|
- name: fedora-29 |
|
|
|
- name: opensuse-42.3 |
|
|
|
driver: |
|
|
|
run_command: /usr/lib/systemd/systemd |
|
|
|
provision_command: |
|
|
|
- yum -y update && yum -y install udev |
|
|
|
# As of February 2019, there have been problems getting `opensuse` to work: |
|
|
|
# * `opensuse` is deprecated |
|
|
|
# * `opensuse/leap` grabs `15.x`, which doesn't run the `inspec` tests |
|
|
|
# * `opensuse/tumbleweed` doesn't install `salt-minion` |
|
|
|
# * `opensuse/leap:42.3` does work |
|
|
|
# * `opensuse/salt-minion` uses `42.3` with `salt-minion` pre-installed |
|
|
|
- name: opensuse-leap-salt-minion |
|
|
|
driver_config: |
|
|
|
image: opensuse/salt-minion |
|
|
|
run_command: /usr/lib/systemd/systemd |
|
|
|
provision_command: |
|
|
|
- zypper refresh && zypper install -y udev |
|
|
|
- systemctl enable sshd.service |
|
|
|
- cat /etc/os-release |
|
|
|
|
|
|
|
# Previous distros |
|
|
|
- name: debian-8 |
|
|
|
- name: ubuntu-16.04 |
|
|
|
- name: fedora-28 |
|
|
|
# centos-6 guest fails on Debian hosts due to vsyscall issues, see |
|
|
|
# https://hub.docker.com/_/centos, "A note about vsyscall" |
|
|
|
- name: centos-6 |
|
|
|
driver: |
|
|
|
run_command: /sbin/init |
|
|
|
|
|
|
|
provisioner: |
|
|
|
name: salt_solo |
|
|
|
log_level: debug |
|
|
|
require_chef: false |
|
|
|
log_level: info |
|
|
|
salt_version: latest |
|
|
|
require_chef: false |
|
|
|
formula: nginx |
|
|
|
salt_copy_filter: |
|
|
|
- .kitchen |
|
|
|
- .git |
|
|
|
pillars_from_files: |
|
|
|
nginx.sls: test/salt/default/pillar/nginx.sls |
|
|
|
state_top: |
|
|
|
base: |
|
|
|
'*': |
|
|
|
- nginx.ng |
|
|
|
pillars: |
|
|
|
top.sls: |
|
|
|
base: |
|
|
|
'*': |
|
|
|
- nginx |
|
|
|
state_top: |
|
|
|
base: |
|
|
|
'*': |
|
|
|
- nginx.ng |
|
|
|
pillars_from_files: |
|
|
|
nginx.sls: test/salt/default/pillar/nginx.sls |
|
|
|
|
|
|
|
verifier: |
|
|
|
# https://www.inspec.io/ |
|
|
|
name: inspec |
|
|
|
sudo: true |
|
|
|
# cli, documentation, html, progress, json, json-min, json-rspec, junit |
|
|
|
reporter: |
|
|
|
- cli |
|
|
|
inspec_tests: |
|
|
|
- path: test/integration/default |
|
|
|
|
|
|
|
suites: |
|
|
|
- name: default |
|
|
|
# Latest distros, latest salt, python3 |
|
|
|
# These distros have py3 packages available in salt's repo |
|
|
|
- name: v2019-2-py3 |
|
|
|
includes: |
|
|
|
- debian-9 |
|
|
|
- ubuntu-18.04 |
|
|
|
- centos-7 |
|
|
|
provisioner: |
|
|
|
# If we don't force bootstrapping with python3, centos bootstraps using python2 |
|
|
|
# and then, when switching the repo to python3 and tries to install |
|
|
|
# the packages, complains with |
|
|
|
# Downloading packages: |
|
|
|
# https://repo.saltstack.com/py3/re.........rpm: [Errno -1] Package does not |
|
|
|
# match intended download. Suggestion: run yum --enablerepo=saltstack clean metadata |
|
|
|
salt_bootstrap_options: -X -x python3 -d git %s |
|
|
|
salt_version: '2019.2' |
|
|
|
pillars: |
|
|
|
salt.sls: |
|
|
|
salt: |
|
|
|
release: '2019.2' |
|
|
|
py_ver: 'py3' |
|
|
|
|
|
|
|
verifier: |
|
|
|
inspec_tests: |
|
|
|
#- path: test/integration/2019-2 |
|
|
|
- path: test/integration/default |
|
|
|
|
|
|
|
# Latest distros, latest salt, python2 |
|
|
|
# Fedora ships updated py2 versions in their own repos |
|
|
|
- name: v2019-2-py2 |
|
|
|
includes: |
|
|
|
- fedora-29 |
|
|
|
provisioner: |
|
|
|
salt_version: '2019.2' |
|
|
|
pillars: |
|
|
|
salt.sls: |
|
|
|
salt: |
|
|
|
release: '2019.2' |
|
|
|
py_ver: 'py2' |
|
|
|
|
|
|
|
verifier: |
|
|
|
inspec_tests: |
|
|
|
#- path: test/integration/2019-2 |
|
|
|
- path: test/integration/default |
|
|
|
|
|
|
|
# Previous distros, previous salt, python2 |
|
|
|
- name: v2018-3-py2 |
|
|
|
includes: |
|
|
|
- debian-8 |
|
|
|
- ubuntu-16.04 |
|
|
|
- opensuse-42.3 |
|
|
|
provisioner: |
|
|
|
# We require an old version of salt in the provisioner or, |
|
|
|
# the salt formula fails to downgrade to the desired version to test |
|
|
|
salt_version: '2018.3' |
|
|
|
pillars: |
|
|
|
salt.sls: |
|
|
|
salt: |
|
|
|
release: '2018.3' |
|
|
|
py_ver: 'py2' |
|
|
|
verifier: |
|
|
|
inspec_tests: |
|
|
|
#- path: test/integration/2018-3 |
|
|
|
- path: test/integration/default |
|
|
|
|
|
|
|
# centos-6 ships with python2.6, so it requires extra bootstrapping parameters |
|
|
|
# to install python2.7 |
|
|
|
- name: v2018-3-py2-bootstrap |
|
|
|
includes: |
|
|
|
- centos-6 |
|
|
|
provisioner: |
|
|
|
salt_bootstrap_options: -X -d stable %s |
|
|
|
salt_version: '2018.3' |
|
|
|
pillars: |
|
|
|
salt.sls: |
|
|
|
salt: |
|
|
|
release: '2018.3' |
|
|
|
py_ver: 'py2' |
|
|
|
verifier: |
|
|
|
inspec_tests: |
|
|
|
#- path: test/integration/2018-3 |
|
|
|
- path: test/integration/default |
|
|
|
|
|
|
|
# To tests fedora 28 & salt v2018.2, we need to force the package version |
|
|
|
# otherwise the image, which includes the 'updates' repo, will install 2019.2 |
|
|
|
- name: v2018-3-py2-forced-version |
|
|
|
includes: |
|
|
|
- fedora-28 |
|
|
|
provisioner: |
|
|
|
# We require an old version of salt in the provisioner or, |
|
|
|
# the salt formula fails to downgrade to the desired version to test |
|
|
|
salt_version: '2018.3' |
|
|
|
pillars: |
|
|
|
salt.sls: |
|
|
|
salt: |
|
|
|
release: '2018.3' |
|
|
|
py_ver: 'py2' |
|
|
|
version: '2018.3.0-1.fc28' |
|
|
|
|
|
|
|
verifier: |
|
|
|
inspec_tests: |
|
|
|
#- path: test/integration/2018-3 |
|
|
|
- path: test/integration/default |
|
|
|
|
|
|
|
# Previous distros, oldest salt, python2 |
|
|
|
- name: v2017-7-py2 |
|
|
|
includes: |
|
|
|
- debian-8 |
|
|
|
- ubuntu-16.04 |
|
|
|
provisioner: |
|
|
|
# We require an old version of salt in the provisioner or, |
|
|
|
# the salt formula fails to downgrade to the desired version to test |
|
|
|
salt_version: '2017.7' |
|
|
|
pillars: |
|
|
|
salt.sls: |
|
|
|
salt: |
|
|
|
release: '2017.7' |
|
|
|
py_ver: 'py2' |
|
|
|
verifier: |
|
|
|
inspec_tests: |
|
|
|
#- path: test/integration/2017-7 |
|
|
|
- path: test/integration/default |
|
|
|
|
|
|
|
# centos-6 ships with python2.6, so it requires extra bootstrapping parameters |
|
|
|
# to install python2.7 |
|
|
|
- name: v2017-7-py2-bootstrap |
|
|
|
includes: |
|
|
|
- centos-6 |
|
|
|
provisioner: |
|
|
|
# As centos-6 ships with python2.6, we use the bootstrapper to install python2.7 |
|
|
|
salt_bootstrap_options: -X -d stable %s |
|
|
|
salt_version: '2017.7' |
|
|
|
pillars: |
|
|
|
salt.sls: |
|
|
|
salt: |
|
|
|
release: '2017.7' |
|
|
|
py_ver: 'py2' |
|
|
|
verifier: |
|
|
|
inspec_tests: |
|
|
|
#- path: test/integration/2017-7 |
|
|
|
- path: test/integration/default |
|
|
|
|