Skip to content

Commit

Permalink
feat(salt): add remaining sections (Kitchen, InSpec & Travis)
Browse files Browse the repository at this point in the history
  • Loading branch information
myii committed Sep 21, 2019
1 parent b98e2f2 commit 11186e9
Show file tree
Hide file tree
Showing 3 changed files with 173 additions and 19 deletions.
25 changes: 20 additions & 5 deletions ssf/defaults.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ ssf_node_anchors:
# An alternative method could be to use:
# `git describe --abbrev=0 --tags`
# yamllint disable rule:line-length
title: 'feat(semantic-release): implement for this formula'
body: '* Checked using https://github.com/myii/ssf-formula/pull/39'
title: 'refactor(kitchen+travis+inspec): use pre-salted images'
body: '* Semi-automated using https://github.com/myii/ssf-formula/pull/36'
# yamllint enable rule:line-length
github:
owner: saltstack-formulas
Expand Down Expand Up @@ -312,9 +312,24 @@ ssf:
3:
<<: *isk_suite_default
name: suse
# NOTE: Only using a basic entry for `salt-formula` for the time being,
# since the use of Kitchen, InSpec & Travis is non-standard
salt: *formula_default
salt:
<<: *formula_default
context:
<<: *context_default
inspec_suites_kitchen:
<<: *isk_default
0:
<<: *isk_suite_default
name: v201902-py3
1:
<<: *isk_suite_default
name: v201902-py2
2:
<<: *isk_suite_default
name: v201803-py2
3:
<<: *isk_suite_default
name: v201707-py2
ssf: *formula_default
stack: *formula_default
sudoers: *formula_default
Expand Down
7 changes: 7 additions & 0 deletions ssf/files/default/.travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,13 @@ addons:
{%- endif %}
env:
matrix:
{%- if semrel_formula == 'salt' %}
# 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
{%- endif %}
{{- format_ci_matrix(platforms, inspec_suites_kitchen, inspec_suites_matrix, platforms_matrix, semrel_formula, old_ci_files) }}

script:
Expand Down
160 changes: 146 additions & 14 deletions ssf/formulas.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,12 @@ ssf_node_anchors:
- centos
- fedora
- opensuse
provisioner:
state_top_salt: &state_top_salt
- '*':
- .pkgrepo
- .master
- .minion
platforms_osfamily_debian: &platforms_osfamily_debian
# [os , os_ver, salt_ver, py_ver]
- [debian , 10 , develop, 3]
Expand Down Expand Up @@ -998,31 +1004,157 @@ ssf:
use_cirrus_ci: true
use_tofs: true
semrel_files: *semrel_files_default
# NOTE: Only using a basic entry for `salt-formula` for the time being,
# since the use of Kitchen, InSpec & Travis is non-standard
salt:
context:
git:
github:
repo: salt-formula
inspec_suites_kitchen:
0:
includes:
# [os , os_ver, salt_ver, py_ver]
- [debian , 9 , 2019.2, 3]
- [ubuntu , 18.04, 2019.2, 3]
- [centos , 7 , 2019.2, 3]
- [fedora , 30 , 2019.2, 3]
- [opensuse/leap, 15 , 2019.2, 3]
inspec_yml:
summary: >-
Verify that Salt `v201902-py3` is setup and configured
provisioner:
pillars:
- '*':
- .
- v201902-py3
pillars_from_files:
- .sls: test/salt/pillar/salt.sls
- v201902-py3.sls: test/salt/pillar/v201902-py3.sls
state_top: *state_top_salt
1:
includes:
# [os , os_ver, salt_ver, py_ver]
- [debian , 9 , 2019.2, 2]
- [ubuntu , 18.04, 2019.2, 2]
- [centos , 7 , 2019.2, 2]
- [opensuse/leap, 15 , 2019.2, 2]
- [amazonlinux , 2 , 2019.2, 2]
inspec_yml:
summary: >-
Verify that Salt `v201902-py2` is setup and configured
provisioner:
pillars:
- '*':
- .
- v201902-py2
pillars_from_files:
- .sls: test/salt/pillar/salt.sls
- v201902-py2.sls: test/salt/pillar/v201902-py2.sls
state_top: *state_top_salt
2:
includes:
# [os , os_ver, salt_ver, py_ver]
- [debian , 9 , 2018.3, 2]
- [ubuntu , 16.04, 2018.3, 2]
- [centos , 7 , 2018.3, 2]
# Would need a forced version, Fedora could be pinned to `minor`, though
# - [fedora , 29 , 2018.3, 2]
# - [opensuse/leap, 15 , 2018.3, 2]
- [amazonlinux , 2 , 2018.3, 2]
inspec_yml:
summary: >-
Verify that Salt `v201803-py2` is setup and configured
provisioner:
pillars:
- '*':
- .
- v201803-py2
pillars_from_files:
- .sls: test/salt/pillar/salt.sls
- v201803-py2.sls: test/salt/pillar/v201803-py2.sls
state_top: *state_top_salt
3:
includes:
# [os , os_ver, salt_ver, py_ver]
- [debian , 8 , 2017.7, 2]
- [ubuntu , 16.04, 2017.7, 2]
- [centos , 6 , 2017.7, 2]
# Would need a forced version, Fedora could be pinned to `minor`, though
# - [fedora , 29 , 2017.7, 2]
# - [opensuse/leap, 15 , 2017.7, 2]
- [amazonlinux , 2 , 2017.7, 2]
inspec_yml:
summary: >-
Verify that Salt `v201707-py2` is setup and configured
provisioner:
pillars:
- '*':
- .
- v201707-py2
pillars_from_files:
- .sls: test/salt/pillar/salt.sls
- v201707-py2.sls: test/salt/pillar/v201707-py2.sls
state_top: *state_top_salt
inspec_suites_matrix:
- v201902-py3
- v201902-py2
- v201803-py2
- v201707-py2
# "Reversed" the ordering here to get the slowest instances closer to the top
platforms:
# [os , os_ver, salt_ver, py_ver]
- [debian , 8 , 2017.7, 2]
- [ubuntu , 16.04, 2017.7, 2]
- [centos , 6 , 2017.7, 2]
# - [fedora , 29 , 2017.7, 2]
# - [opensuse/leap, 15 , 2017.7, 2]
- [amazonlinux , 2 , 2017.7, 2]
- [debian , 9 , 2018.3, 2]
- [ubuntu , 16.04, 2018.3, 2]
- [centos , 7 , 2018.3, 2]
# - [fedora , 29 , 2018.3, 2]
# - [opensuse/leap, 15 , 2018.3, 2]
- [amazonlinux , 2 , 2018.3, 2]
- [debian , 9 , 2019.2, 2]
- [ubuntu , 18.04, 2019.2, 2]
- [centos , 7 , 2019.2, 2]
- [opensuse/leap, 15 , 2019.2, 2]
- [amazonlinux , 2 , 2019.2, 2]
- [debian , 9 , 2019.2, 3]
- [ubuntu , 18.04, 2019.2, 3]
- [centos , 7 , 2019.2, 3]
- [fedora , 30 , 2019.2, 3]
- [opensuse/leap, 15 , 2019.2, 3]
platforms_matrix:
# [os , os_ver, salt_ver, py_ver, inspec_suite]
# - [debian , 8 , 2017.7, 2, v201707-py2]
- [ubuntu , 16.04, 2017.7, 2, v201707-py2]
- [centos , 6 , 2017.7, 2, v201707-py2]
# # - [fedora , 29 , 2017.7, 2, v201707-py2]
# # - [opensuse/leap, 15 , 2017.7, 2, v201707-py2]
# - [amazonlinux , 2 , 2017.7, 2, v201707-py2]
# - [debian , 9 , 2018.3, 2, v201803-py2]
# - [ubuntu , 16.04, 2018.3, 2, v201803-py2]
- [centos , 7 , 2018.3, 2, v201803-py2]
# # - [fedora , 29 , 2018.3, 2, v201803-py2]
# # - [opensuse/leap, 15 , 2018.3, 2, v201803-py2]
- [amazonlinux , 2 , 2018.3, 2, v201803-py2]
- [debian , 9 , 2019.2, 2, v201902-py2]
- [ubuntu , 18.04, 2019.2, 2, v201902-py2]
# - [centos , 7 , 2019.2, 2, v201902-py2]
# - [opensuse/leap, 15 , 2019.2, 2, v201902-py2]
# - [amazonlinux , 2 , 2019.2, 2, v201902-py2]
# - [debian , 9 , 2019.2, 3, v201902-py3]
# - [ubuntu , 18.04, 2019.2, 3, v201902-py3]
# - [centos , 7 , 2019.2, 3, v201902-py3]
- [fedora , 30 , 2019.2, 3, v201902-py3]
- [opensuse/leap, 15 , 2019.2, 3, v201902-py3]
use_tofs: true
yamllint:
ignore:
additional:
- salt/osfamilymap.yaml
- salt/osmap.yaml
semrel_files:
bin/kitchen: *file__bin__kitchen
docs/CONTRIBUTING.rst: *file__docs__CONTRIBUTING--rst
docs/TOFS_pattern.rst: *file__docs__TOFS_pattern--rst
formula/libtofs.jinja: *file__formula__libtofs--jinja
.gitignore: *file__--gitignore
.yamllint: *file__--yamllint
commitlint.config.js: *file__commitlint--config--js
Gemfile: *file__Gemfile
pre-commit_semantic-release.sh: *file__pre-commit_semantic-release--sh
release-rules.js: *file__release-rules--js
release.config.js: *file__release--config--js
semrel_files: *semrel_files_default
ssf:
context:
git:
Expand Down

0 comments on commit 11186e9

Please sign in to comment.