ci(kitchen+travis): adjust matrix to add `3000` & remove `2017.7`

* Semi-automated using https://github.com/myii/ssf-formula/pull/135
This commit is contained in:
Imran Iqbal 2020-03-21 11:30:25 +00:00
parent f246a5e0af
commit 4a5f8053e9
6 changed files with 254 additions and 89 deletions

View File

@ -58,30 +58,27 @@ jobs:
## Define the rest of the matrix based on Kitchen testing
# Make sure the instances listed below match up with
# the `platforms` defined in `kitchen.yml`
# The ordering used below has been selected based on the time required in Travis
# The slower ones are kept as high up as possible, to run concurrently rather than
# slow down the entire run at the end (i.e. `centos-6` and `opensuse`)
# However, the groupings needed to be maintained in some semblance of order
# so this is a best-effort matrix, in the circumstances
# - env: INSTANCE=v201707-py2-debian-8-2017-7-py2
- env: INSTANCE=v201707-py2-ubuntu-1604-2017-7-py2
- env: INSTANCE=v201707-py2-centos-6-2017-7-py2
# - env: INSTANCE=v201707-py2-amazonlinux-1-2017-7-py2
# - env: INSTANCE=v201707-py2-arch-base-latest-2017-7-py2
- env: INSTANCE=v201803-py2-debian-9-2018-3-py2
# - env: INSTANCE=v201803-py2-ubuntu-1604-2018-3-py2
- env: INSTANCE=v201803-py2-centos-7-2018-3-py2
# - env: INSTANCE=v201803-py2-amazonlinux-1-2018-3-py2
# - env: INSTANCE=v201803-py2-arch-base-latest-2018-3-py2
- env: INSTANCE=v201902-py2-ubuntu-1804-2019-2-py2
# - env: INSTANCE=v201902-py2-centos-7-2019-2-py2
- env: INSTANCE=v201902-py3-amazonlinux-2-2019-2-py3
# - env: INSTANCE=v201902-py2-arch-base-latest-2019-2-py2
- env: INSTANCE=v201902-py3-debian-10-2019-2-py3
# - env: INSTANCE=v201902-py3-debian-9-2019-2-py3
- env: INSTANCE=v3000-py3-debian-10-3000-py3
- env: INSTANCE=v3000-py3-ubuntu-1804-3000-py3
- env: INSTANCE=v3000-py3-centos-8-3000-py3
- env: INSTANCE=v3000-py3-fedora-31-3000-py3
# - env: INSTANCE=v3000-py3-opensuse-leap-151-3000-py3
- env: INSTANCE=v3000-py3-amazonlinux-2-3000-py3
# - env: INSTANCE=v3000-py2-arch-base-latest-3000-py2
# - env: INSTANCE=v201902-py3-debian-10-2019-2-py3
- env: INSTANCE=v201902-py3-debian-9-2019-2-py3
# - env: INSTANCE=v201902-py3-ubuntu-1804-2019-2-py3
# - env: INSTANCE=v201902-py3-centos-8-2019-2-py3
- env: INSTANCE=v201902-py3-opensuse-leap-151-2019-2-py3
# - env: INSTANCE=v201902-py3-amazonlinux-2-2019-2-py3
- env: INSTANCE=v201902-py2-ubuntu-1804-2019-2-py2
# - env: INSTANCE=v201902-py2-centos-7-2019-2-py2
# - env: INSTANCE=v201902-py2-arch-base-latest-2019-2-py2
# - env: INSTANCE=v201803-py2-debian-9-2018-3-py2
- env: INSTANCE=v201803-py2-ubuntu-1604-2018-3-py2
- env: INSTANCE=v201803-py2-centos-7-2018-3-py2
# - env: INSTANCE=v201803-py2-amazonlinux-1-2018-3-py2
# - env: INSTANCE=v201803-py2-arch-base-latest-2018-3-py2
## Define the release stage that runs `semantic-release`
- stage: 'release'

View File

@ -11,59 +11,36 @@ driver:
# Make sure the platforms listed below match up with
# the `env.matrix` instances defined in `.travis.yml`
platforms:
## SALT `2017.7`
- name: debian-8-2017-7-py2
## SALT `3000`
- name: debian-10-3000-py3
driver:
image: netmanagers/salt-2017.7-py2:debian-8
- name: ubuntu-1604-2017-7-py2
image: netmanagers/salt-3000-py3:debian-10
- name: ubuntu-1804-3000-py3
driver:
image: netmanagers/salt-2017.7-py2:ubuntu-16.04
- name: centos-6-2017-7-py2
image: netmanagers/salt-3000-py3:ubuntu-18.04
- name: centos-8-3000-py3
driver:
image: netmanagers/salt-2017.7-py2:centos-6
run_command: /sbin/init
- name: amazonlinux-1-2017-7-py2
image: netmanagers/salt-3000-py3:centos-8
- name: fedora-31-3000-py3
driver:
image: netmanagers/salt-2017.7-py2:amazonlinux-1
run_command: /sbin/init
- name: arch-base-latest-2017-7-py2
image: netmanagers/salt-3000-py3:fedora-31
- name: opensuse-leap-151-3000-py3
driver:
image: netmanagers/salt-2017.7-py2:arch-base-latest
image: netmanagers/salt-3000-py3:opensuse-leap-15.1
run_command: /usr/lib/systemd/systemd
## SALT `2018.3`
- name: debian-9-2018-3-py2
# 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-py3
driver:
image: netmanagers/salt-2018.3-py2:debian-9
- name: ubuntu-1604-2018-3-py2
image: netmanagers/salt-3000-py3:amazonlinux-2
- name: arch-base-latest-3000-py2
driver:
image: netmanagers/salt-2018.3-py2:ubuntu-16.04
- name: centos-7-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:centos-7
- name: amazonlinux-1-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:amazonlinux-1
run_command: /sbin/init
- name: arch-base-latest-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:arch-base-latest
image: netmanagers/salt-3000-py2:arch-base-latest
run_command: /usr/lib/systemd/systemd
## SALT `2019.2`
- name: ubuntu-1804-2019-2-py2
driver:
image: netmanagers/salt-2019.2-py2:ubuntu-18.04
- name: centos-7-2019-2-py2
driver:
image: netmanagers/salt-2019.2-py2:centos-7
- name: amazonlinux-2-2019-2-py3
driver:
image: netmanagers/salt-2019.2-py3:amazonlinux-2
- name: arch-base-latest-2019-2-py2
driver:
image: netmanagers/salt-2019.2-py2:arch-base-latest
run_command: /usr/lib/systemd/systemd
- name: debian-10-2019-2-py3
driver:
image: netmanagers/salt-2019.2-py3:debian-10
@ -87,6 +64,38 @@ platforms:
# => SCP did not finish successfully (255): (Net::SCP::Error)
transport:
max_ssh_sessions: 1
- name: amazonlinux-2-2019-2-py3
driver:
image: netmanagers/salt-2019.2-py3:amazonlinux-2
- name: ubuntu-1804-2019-2-py2
driver:
image: netmanagers/salt-2019.2-py2:ubuntu-18.04
- name: centos-7-2019-2-py2
driver:
image: netmanagers/salt-2019.2-py2:centos-7
- name: arch-base-latest-2019-2-py2
driver:
image: netmanagers/salt-2019.2-py2:arch-base-latest
run_command: /usr/lib/systemd/systemd
## SALT `2018.3`
- name: debian-9-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:debian-9
- name: ubuntu-1604-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:ubuntu-16.04
- name: centos-7-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:centos-7
- name: amazonlinux-1-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:amazonlinux-1
run_command: /sbin/init
- name: arch-base-latest-2018-3-py2
driver:
image: netmanagers/salt-2018.3-py2:arch-base-latest
run_command: /usr/lib/systemd/systemd
provisioner:
name: salt_solo
@ -107,6 +116,55 @@ verifier:
- cli
suites:
- name: v3000-py3
includes:
- debian-10-3000-py3
- ubuntu-1804-3000-py3
- centos-8-3000-py3
- fedora-31-3000-py3
- opensuse-leap-151-3000-py3
- amazonlinux-2-3000-py3
provisioner:
state_top:
base:
'*':
- salt.pkgrepo
- salt.master
- salt.minion
pillars:
top.sls:
base:
'*':
- salt
- v3000-py3
pillars_from_files:
salt.sls: test/salt/pillar/salt.sls
v3000-py3.sls: test/salt/pillar/v3000-py3.sls
verifier:
inspec_tests:
- path: test/integration/v3000-py3
- name: v3000-py2
includes:
- arch-base-latest-3000-py2
provisioner:
state_top:
base:
'*':
- salt.pkgrepo
- salt.master
- salt.minion
pillars:
top.sls:
base:
'*':
- salt
- v3000-py2
pillars_from_files:
salt.sls: test/salt/pillar/salt.sls
v3000-py2.sls: test/salt/pillar/v3000-py2.sls
verifier:
inspec_tests:
- path: test/integration/v3000-py2
- name: v201902-py3
includes:
- debian-10-2019-2-py3
@ -184,29 +242,3 @@ suites:
verifier:
inspec_tests:
- path: test/integration/v201803-py2
- name: v201707-py2
includes:
- debian-8-2017-7-py2
- ubuntu-1604-2017-7-py2
- centos-6-2017-7-py2
- amazonlinux-1-2017-7-py2
- arch-base-latest-2017-7-py2
provisioner:
state_top:
base:
'*':
- salt.pkgrepo
- salt.master
- salt.minion
pillars:
top.sls:
base:
'*':
- salt
- v201707-py2
pillars_from_files:
salt.sls: test/salt/pillar/salt.sls
v201707-py2.sls: test/salt/pillar/v201707-py2.sls
verifier:
inspec_tests:
- path: test/integration/v201707-py2

View File

@ -0,0 +1,50 @@
# InSpec Profile: `v3000-py2`
This shows the implementation of the `v3000-py2` 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 v3000-py2
Summary
-------
Location: v3000-py2
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 v3000-py2
..
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 v3000-py2 --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).

View File

@ -0,0 +1,18 @@
# -*- coding: utf-8 -*-
# vim: ft=yaml
---
name: v3000-py2
title: salt formula
maintainer: SaltStack Formulas
license: Apache-2.0
summary: Verify that Salt `v3000-py2` 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: arch

View File

@ -0,0 +1,50 @@
# InSpec Profile: `v3000-py3`
This shows the implementation of the `v3000-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 v3000-py3
Summary
-------
Location: v3000-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 v3000-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 v3000-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).

View File

@ -0,0 +1,18 @@
# -*- coding: utf-8 -*-
# vim: ft=yaml
---
name: v3000-py3
title: salt formula
maintainer: SaltStack Formulas
license: Apache-2.0
summary: Verify that Salt `v3000-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: arch