Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(formula): upgrade platforms support after 2019.2.2 release #86

Merged
merged 19 commits into from
Oct 31, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
f1adcaf
refactor(formula): update all references from `develop` => `master`
myii Oct 24, 2019
5e88b44
revert(kitchen): "use bootstrapped `opensuse` images until `2019.2.2`"
myii Oct 25, 2019
e5ee8aa
refactor(kitchen): update `opensuse-leap` references from `15` => `15.1`
myii Oct 25, 2019
88f3309
test(salt-lint): check `.tst` files across all formulas
myii Oct 25, 2019
6221763
feat(defaults): upgrade platforms support after `2019.2.2` release
myii Oct 25, 2019
cad8888
feat(formulas): upgrade platforms support after `2019.2.2` release
myii Oct 25, 2019
9b1be95
ci(amazon): use `py2` until `py3` images can be prepared (revert later)
myii Oct 28, 2019
eb2a53a
chore(defaults): prepare commit title and body to be used in formulas
myii Oct 29, 2019
13d1d4b
feat(salt): adjust platforms and matrix for `2019.2.2`
myii Oct 29, 2019
a054c08
feat(libvirt): adjust matrix for `2019.2.2`
myii Oct 31, 2019
ad8cd88
feat(timezone): adjust matrix for `2019.2.2`
myii Oct 31, 2019
2862c17
feat(sysctl): adjust matrix for `2019.2.2`
myii Oct 30, 2019
d73690a
feat(locale): adjust suites, platforms and matrix for `2019.2.2`
myii Oct 31, 2019
b27c0ae
feat(letsencrypt): adjust matrix for `2019.2.2`
myii Oct 31, 2019
5c1a318
feat(deepsea): disable failing platform in matrix for `2019.2.2`
myii Oct 31, 2019
bb48374
feat(iscsi): disable failing platforms in matrix for `2019.2.2`
myii Oct 31, 2019
96f61dc
feat(lvm): disable failing platforms in matrix for `2019.2.2`
myii Oct 31, 2019
8e03ecb
feat(systemd): disable failing platform in matrix for `2019.2.2`
myii Oct 31, 2019
6e495ef
feat(ufw): disable failing platforms in matrix for `2019.2.2`
myii Oct 31, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 28 additions & 44 deletions ssf/defaults.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,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: '* Automated using https://github.com/myii/ssf-formula/pull/85'
title: 'ci(kitchen+travis): upgrade matrix after `2019.2.2` release [skip ci]'
body: '* Automated using https://github.com/myii/ssf-formula/pull/86'
# yamllint enable rule:line-length
github:
owner: 'saltstack-formulas'
Expand Down Expand Up @@ -87,67 +87,51 @@ ssf_node_anchors:
# as numbers (for comparisons)
# [os , os_ver, salt_ver, py_ver]

### `develop-py3` => `master-py3`
### `master-py3`
- [debian , 10 , master, 3]
# - [debian , 9 , develop, 3] # unmaintained
- [ubuntu , 18.04, develop, 3]
- [centos , 7 , develop, 3]
- [fedora , 30 , develop, 3]
# - [fedora , 29 , develop, 3] # unmaintained
- [opensuse/leap, 15 , develop, 3]

### `develop-py2`
- [amazonlinux , 2 , develop, 2]
- [arch-base , latest, develop, 2]
- [ubuntu , 18.04, master, 3]
- [centos , 8 , master, 3]
- [fedora , 31 , master, 3]
- [opensuse/leap, 15.1 , master, 3]
### ` master-py2`
- [amazonlinux , 2 , master, 2]
- [arch-base , latest, master, 2]

### `2019.2-py3`
- [debian , 9 , 2019.2, 3] # unmaintained (resolve)
- [debian , 10 , 2019.2, 3]
- [debian , 9 , 2019.2, 3]
- [ubuntu , 18.04, 2019.2, 3]
# - [ubuntu , 1804, 2019.2, 3] # unmaintained
- [centos , 7 , 2019.2, 3]
- [fedora , 30 , 2019.2, 3]
# - [fedora , 29 , 2019.2, 3] # unmaintained
- [opensuse/leap, 15 , 2019.2, 3]

# - [ubuntu , 16.04, 2019.2, 3]
- [centos , 8 , 2019.2, 3]
# - [centos , 7 , 2019.2, 3]
- [fedora , 31 , 2019.2, 3]
- [opensuse/leap, 15.1 , 2019.2, 3]
### `2019.2-py2`
# - [debian , 10 , 2019.2, 2]
# - [debian , 9 , 2019.2, 2] # unmaintained
# - [ubuntu , 18.04, 2019.2, 2]
# - [centos , 7 , 2019.2, 2]
# - [fedora , 29 , 2019.2, 2] # unmaintained
# - [opensuse/leap, 15 , 2019.2, 2] # unmaintained
- [centos , 7 , 2019.2, 2]
- [amazonlinux , 2 , 2019.2, 2]
- [arch-base , latest, 2019.2, 2]

### `2018.3-py3`
# - [fedora , 29 , 2018.3, 3]

- [fedora , 30 , 2018.3, 3]
### `2018.3-py2`
# - [debian , 10 , 2018.3, 2]
- [debian , 9 , 2018.3, 2]
# - [debian , 8 , 2018.3, 2] # unmaintained
# - [debian , 8 , 2018.3, 2]
# - [ubuntu , 18.04, 2018.3, 2]
- [ubuntu , 16.04, 2018.3, 2]
# - [ubuntu , 1604 , 2018.3, 2] # unmaintained
- [centos , 7 , 2018.3, 2]
# - [centos , 6 , 2018.3, 2]
- [fedora , 29 , 2018.3, 2] # unmaintained (resolve)
# - [fedora , 28 , 2018.3, 2] # unmaintained
- [opensuse/leap, 15 , 2018.3, 2]
# - [opensuse/leap, 42 , 2018.3, 2] # unmaintained
# - [opensuse , 423 , 2018.3, 2] # unmaintained
- [opensuse/leap, 15.1 , 2018.3, 2]
- [amazonlinux , 2 , 2018.3, 2]
- [arch-base , latest, 2018.3, 2]

### `2017.7-py2`
# - [debian , 9 , 2017.7, 2]
- [debian , 8 , 2017.7, 2] # unmaintained (resolve)
- [debian , 8 , 2017.7, 2]
- [ubuntu , 16.04, 2017.7, 2]
- [centos , 6 , 2017.7, 2]
- [fedora , 29 , 2017.7, 2]
# - [fedora , 28 , 2017.7, 2] # unmaintained
- [opensuse/leap, 15 , 2017.7, 2]
# - [opensuse/leap, 42 , 2017.7, 2] # unmaintained
- [fedora , 30 , 2017.7, 2]
- [opensuse/leap, 15.1 , 2017.7, 2]
- [amazonlinux , 2 , 2017.7, 2]
- [arch-base , latest, 2017.7, 2]

Expand All @@ -156,10 +140,10 @@ ssf_node_anchors:
# [os , os_ver, salt_ver, py_ver, inspec_suite]
- [debian , 10 , master, 3, default]
- [ubuntu , 18.04, 2019.2, 3, default]
- [opensuse/leap, 15.1 , 2019.2, 3, default]
- [amazonlinux , 2 , 2019.2, 2, default]
- [arch-base , latest, 2019.2, 2, default]
- [fedora , 29 , 2018.3, 2, default]
- [opensuse/leap, 15 , 2018.3, 2, default]
- [fedora , 30 , 2018.3, 3, default]
- [arch-base , latest, 2018.3, 2, default]
- [centos , 6 , 2017.7, 2, default]
# To deal with excessive instances when mimicking `kitchen list -b`
# If values are set, only use these as commented entries in the matrix
Expand Down Expand Up @@ -344,7 +328,7 @@ ssf:
<<: *isk_default
1:
<<: *isk_suite_default
name: 'fedora'
name: 'redhat'
logrotate: *formula_default
lvm: *formula_default
mysql: *formula_default
Expand Down
15 changes: 5 additions & 10 deletions ssf/files/default/.travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,12 @@ script:
- {{ post_cmd }}
{%- endfor %}
{%- if use_saltcheck %}
# If a `develop` instance, get the appropriate version of `saltcheck.py` (temporary)
# If a `master` instance, get the appropriate version of `saltcheck.py` (temporary)
{%- if semrel_formula in ['cron'] %}
# Likewise, use a custom `cron.py` temporarily until the upstream PR is merged:
# - https://github.com/saltstack/salt/pull/55016
{%- endif %}
- if [ ! -z $(echo "${INSTANCE}" | grep \\-develop-) ]; then
- if [ ! -z $(echo "${INSTANCE}" | grep \\-master-) ]; then
bin/kitchen exec "${INSTANCE}" -c
"sudo curl -o \$(find /usr/lib/ -type d -name modules | grep packages/salt/modules)/saltcheck.py
https://raw.githubusercontent.com/myii/salt/fix/add-retcode/salt/modules/saltcheck.py";
Expand All @@ -83,8 +83,8 @@ script:
https://raw.githubusercontent.com/myii/salt/fix/add-retcode/salt/modules/cron.py";
{%- endif %}
fi
# If a `develop` instance, run all of the `saltcheck` tests
- if [ ! -z $(echo "${INSTANCE}" | grep \\-develop-) ]; then
# If a `master` instance, run all of the `saltcheck` tests
- if [ ! -z $(echo "${INSTANCE}" | grep \\-master-) ]; then
bin/kitchen exec "${INSTANCE}" -c
"sudo salt-call
--config-dir=/tmp/kitchen/etc/salt
Expand Down Expand Up @@ -120,14 +120,9 @@ jobs:
# [Py2/InsecurePlatformWarning] Tornado requires an up-to-date SSL module.
- sudo apt-get install python3-pip python3-setuptools python3-wheel -y
{%- endif %}
{#- Prepare variable used for file types to pipe to `salt-lint` #}
{%- set salt_lint_files = '\.sls$\|\.jinja$\|\.j2$\|\.tmpl$' %}
{%- if use_saltcheck %}
{%- set salt_lint_files = salt_lint_files ~ '\|\.tst$' %}
{%- endif %}
# Install and run `salt-lint`
- {{ pip_cmd }} install --user salt-lint
- git ls-files | grep '{{ salt_lint_files }}'
- git ls-files | grep '\.sls$\|\.jinja$\|\.j2$\|\.tmpl$\|\.tst$'
| xargs -I {} salt-lint {}
# Install and run `yamllint`
# Need at least `v1.17.0` for the `yaml-files` setting
Expand Down
33 changes: 6 additions & 27 deletions ssf/files/default/kitchen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,11 +50,7 @@

{%- macro format_driver_image(os, os_ver, salt_ver, py_ver) %}
{%- filter indent(6) %}
{%- if os == 'opensuse/leap' %}
image: {{ os }}:{{ os_ver }}
{%- else %}
image: netmanagers/salt-{{ salt_ver }}-py{{ py_ver }}:{{ os | replace('/', '-') }}-{{ os_ver }}
{%- endif %}
{%- endfilter %}
{%- endmacro %}

Expand All @@ -63,20 +59,10 @@ image: netmanagers/salt-{{ salt_ver }}-py{{ py_ver }}:{{ os | replace('/', '-')
{#- Need to look at if this can be resolved from within the formulas themselves, though #}
{%- filter indent(6) %}
{%- set prov_cmds = [] %}
{#- Specific to unsalted `opensuse/leap` #}
{%- if os == 'opensuse/leap' %}
{%- do prov_cmds.append('# yamllint disable-line rule:line-length') %}
{%- do prov_cmds.append(
'- zypper install -y glibc-locale net-tools net-tools-deprecated python-xml python{0}-pip'.format(py_ver)
) %}
{%- do prov_cmds.append('- systemctl enable sshd.service') %}
{%- endif %}
{#- Specific to `develop` (and the introduction of `master`) #}
{%- if salt_ver in ['develop', 'master'] %}
{%- if os != 'opensuse/leap' %}
{%- do prov_cmds.append('- curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com') %}
{%- do prov_cmds.append('- sh bootstrap-salt.sh -XdPbfrq -x python{0} git {1}'.format(py_ver, salt_ver)) %}
{%- endif %}
{#- Specific to `master` #}
{%- if salt_ver == 'master' %}
{%- do prov_cmds.append('- curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com') %}
{%- do prov_cmds.append('- sh bootstrap-salt.sh -XdPbfrq -x python{0} git {1}'.format(py_ver, salt_ver)) %}
{%- if semrel_formula == 'deepsea' %}
{%- if os in ['centos', 'fedora'] %}
{%- do prov_cmds.append('- yum install make -y') %}
Expand Down Expand Up @@ -148,12 +134,8 @@ platforms:
{%- set salt_ver = platform[2] %}
{%- set py_ver = platform[3] %}
{#- Display comment for each section (based on Salt version) #}
{#- Temporarily need to merge `develop` and `master` until the transition is complete #}
{%- set linebreak = '\n' %}
{%- set comment = '`{0}`'.format(salt_ver) %}
{%- if salt_ver in ['develop', 'master'] %}
{%- set comment = '`develop` => `master`' %}
{%- endif %}
{%- if loop.index0 == 0 %}
{%- set linebreak = first_linebreak %}
{%- endif %}
Expand All @@ -176,11 +158,8 @@ platforms:
{{- format_driver_image(os, os_ver, salt_ver, py_ver) }}
{{- format_driver_prov_cmds(os, os_ver, salt_ver, py_ver) }}
{{- format_driver_run_cmds(os, os_ver) }}
{%- if [os, os_ver] == ['opensuse/leap', 15] %}
provisioner:
salt_bootstrap_options: -XdPfrq -x python{{ py_ver }} git {{ salt_ver }}
salt_install: bootstrap
# Workaround to avoid intermittent failures on `opensuse-leap-15`:
{%- if [os, os_ver] == ['opensuse/leap', 15.1] %}
# Workaround to avoid intermittent failures on `opensuse-leap-15.1`:
# => SCP did not finish successfully (255): (Net::SCP::Error)
transport:
max_ssh_sessions: 1
Expand Down
Loading