Skip to content

Commit

Permalink
ci(kitchen+travis): update to pre-salted matrix
Browse files Browse the repository at this point in the history
  • Loading branch information
myii committed Apr 26, 2019
1 parent 722f916 commit 5a6ecbc
Show file tree
Hide file tree
Showing 2 changed files with 63 additions and 167 deletions.
25 changes: 10 additions & 15 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,27 +12,22 @@ services:
- docker

before_install:
- gem install bundler
- bundle install

# Make sure the instances listed below match up with
# the `platforms` defined in `kitchen.yml`
env:
matrix:
- INSTANCE: v2019-2-py3-debian-9
- INSTANCE: v2019-2-py3-ubuntu-1804
- INSTANCE: v2019-2-py2-centos-7
#- INSTANCE: v2019-2-py2-fedora-29

- INSTANCE: v2018-3-py2-debian-8
- INSTANCE: v2018-3-py2-ubuntu-1604
- INSTANCE: v2018-3-py2-bootstrap-centos-6
#- INSTANCE: v2018-3-py2-forced-version-fedora-28
- INSTANCE: v2018-3-py2-opensuse-423

- INSTANCE: v2017-7-py2-debian-8
- INSTANCE: v2017-7-py2-ubuntu-1604
- INSTANCE: v2017-7-py2-bootstrap-centos-6
- INSTANCE: default-debian-9-2019-2-py3
- INSTANCE: default-ubuntu-1804-2019-2-py3
- INSTANCE: default-centos-7-2019-2-py2
- INSTANCE: default-fedora-29-2019-2-py2
- INSTANCE: default-opensuse-423-2018-3-py2
- INSTANCE: default-debian-8-2018-3-py2
- INSTANCE: default-ubuntu-1604-2018-3-py2
- INSTANCE: default-fedora-28-2018-3-py2
- INSTANCE: default-debian-8-2017-7-py2
- INSTANCE: default-ubuntu-1604-2017-7-py2

script:
- bundle exec kitchen verify ${INSTANCE}
Expand Down
205 changes: 53 additions & 152 deletions kitchen.yml
Original file line number Diff line number Diff line change
@@ -1,37 +1,69 @@
# -*- coding: utf-8 -*-
# vim: ft=yaml
---
# For help on this file's format, see https://kitchen.ci/
driver:
name: docker
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:
# Latest distros
- name: debian-9
- name: ubuntu-18.04
- name: centos-7
- name: fedora-29
- name: opensuse-42.3
## SALT 2019.2
- name: debian-9-2019-2-py3
driver:
image: netmanagers/salt-2019.2-py3:debian-9
- name: ubuntu-1804-2019-2-py3
driver:
image: netmanagers/salt-2019.2-py3:ubuntu-1804
- name: centos-7-2019-2-py2
driver:
image: netmanagers/salt-2019.2-py2:centos-7
- name: fedora-29-2019-2-py2
driver:
image: netmanagers/salt-2019.2-py2:fedora-29

## SALT 2018.3
- name: opensuse-423-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:opensuse-423
run_command: /usr/lib/systemd/systemd
provision_command:
- systemctl enable sshd.service
- name: debian-8-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:debian-8
- name: ubuntu-1604-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:ubuntu-1604
- name: fedora-28-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:fedora-28

# 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
# Disabled for `template-formula` because not `systemd` based
# - name: centos-6-2018-3
# driver:
# image: netmanagers/salt-2018.3-py2:centos-6
# run_command: /sbin/init

##S SALT 2017.7
- name: debian-8-2017-7-py2
driver:
run_command: /sbin/init
image: netmanagers/salt-2017.7-py2:debian-8
- name: ubuntu-1604-2017-7-py2
driver:
image: netmanagers/salt-2017.7-py2:ubuntu-1604
# - name: centos-6-2017-7
# driver:
# image: netmanagers/salt-2017.7-py2:centos-6
# run_command: /sbin/init

provisioner:
name: salt_solo
log_level: info
salt_version: latest
salt_install: none
require_chef: false
formula: cert
salt_copy_filter:
Expand All @@ -57,145 +89,14 @@ provisioner:
path: ./test/salt

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

suites:
# 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
provisioner:
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/controls/managed.rb

# Latest distros, latest salt, python2
# Fedora ships updated py2 versions in their own repos
- name: v2019-2-py2
includes:
- centos-7
- 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

# 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

# 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

# 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

# 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

# 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

- name: default

0 comments on commit 5a6ecbc

Please sign in to comment.