Переглянути джерело

Merge pull request #461 from saltstack-formulas/ci/add-3000-remove-2017.7

ci(kitchen+travis): adjust matrix to add `3000` & remove `2017.7`
tags/v1.3.2
Imran Iqbal 4 роки тому
джерело
коміт
676688311f
Аккаунт користувача з таким Email не знайдено
11 змінених файлів з 204 додано та 106 видалено
  1. +18
    -21
      .travis.yml
  2. +100
    -68
      kitchen.yml
  3. +0
    -4
      salt/osfamilymap.yaml
  4. +1
    -1
      test/integration/v201902-py3/controls/pkgs_spec.rb
  5. +6
    -6
      test/integration/v3000-py2/README.md
  6. +2
    -2
      test/integration/v3000-py2/inspec.yml
  7. +50
    -0
      test/integration/v3000-py3/README.md
  8. +7
    -3
      test/integration/v3000-py3/controls/pkgs_spec.rb
  9. +0
    -0
      test/integration/v3000-py3/controls/service_spec.rb
  10. +18
    -0
      test/integration/v3000-py3/inspec.yml
  11. +2
    -1
      test/salt/pillar/v3000-py3.sls

+ 18
- 21
.travis.yml Переглянути файл

@@ -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'

+ 100
- 68
kitchen.yml Переглянути файл

@@ -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
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
# 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:amazonlinux-1
run_command: /sbin/init
- name: arch-base-latest-2018-3-py2
image: netmanagers/salt-3000-py3:amazonlinux-2
- name: arch-base-latest-3000-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

+ 0
- 4
salt/osfamilymap.yaml Переглянути файл

@@ -5,10 +5,6 @@
{%- set py_ver_repr = salt['pillar.get']('salt:py_ver', '') %}

{%- set osrelease = salt['grains.get']('osrelease') %}
{#- Workaround for OpenSuse Leap 15.1 until the repo is available #}
{%- if [grains.os_family, osrelease] == ['Suse', '15.1'] %}
{%- set osrelease = '15.0' %}
{%- endif %}
{%- set salt_release = salt['pillar.get']('salt:release', 'latest') %}
{%- if salt_release.split('.')|length >= 3 %}
{%- set salt_release = 'archive/' ~ salt_release %}

+ 1
- 1
test/integration/v201902-py3/controls/pkgs_spec.rb Переглянути файл

@@ -12,7 +12,7 @@ version =
when 'fedora'
'2019.2.1rc0-3.fc31'
when 'suse'
'2019.2.0-lp151.5.12.1'
'2019.2.0-lp151.28.1'
when 'debian'
'2019.2.3+ds-1'
end

test/integration/v201707-py2/README.md → test/integration/v3000-py2/README.md Переглянути файл

@@ -1,16 +1,16 @@
# InSpec Profile: `v201707-py2`
# InSpec Profile: `v3000-py2`

This shows the implementation of the `v201707-py2` InSpec [profile](https://github.com/inspec/inspec/blob/master/docs/profiles.md).
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 v201707-py2
$ inspec check v3000-py2
Summary
-------
Location: v201707-py2
Location: v3000-py2
Profile: profile
Controls: 4
Timestamp: 2019-06-24T23:09:01+00:00
@@ -28,7 +28,7 @@ Warnings
To run all **supported** controls on a local machine use `inspec exec /path/to/profile`.

```bash
$ inspec exec v201707-py2
$ inspec exec v3000-py2
..

Finished in 0.0025 seconds (files took 0.12449 seconds to load)
@@ -40,7 +40,7 @@ Finished in 0.0025 seconds (files took 0.12449 seconds to load)
To run one control from the profile use `inspec exec /path/to/profile --controls name`.

```bash
$ inspec exec v201707-py2 --controls package
$ inspec exec v3000-py2 --controls package
.

Finished in 0.0025 seconds (files took 0.12449 seconds to load)

test/integration/v201707-py2/inspec.yml → test/integration/v3000-py2/inspec.yml Переглянути файл

@@ -1,11 +1,11 @@
# -*- coding: utf-8 -*-
# vim: ft=yaml
---
name: v201707-py2
name: v3000-py2
title: salt formula
maintainer: SaltStack Formulas
license: Apache-2.0
summary: Verify that Salt `v201707-py2` is setup and configured
summary: Verify that Salt `v3000-py2` is setup and configured
supports:
- platform-name: debian
- platform-name: ubuntu

+ 50
- 0
test/integration/v3000-py3/README.md Переглянути файл

@@ -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).

test/integration/v201707-py2/controls/pkgs_spec.rb → test/integration/v3000-py3/controls/pkgs_spec.rb Переглянути файл

@@ -5,12 +5,16 @@ version =
when 'redhat'
case platform[:name]
when 'amazon'
'2017.7.8-1.el7'
'3000-1.amzn2'
when 'centos'
'2017.7.8-1.el6'
'3000-1.el8'
end
when 'fedora'
'3000-5.fc31'
when 'suse'
'3000-lp151.28.1'
when 'debian'
'2017.7.8+ds-1'
'3000+ds-1'
end

control 'salt packages' do

test/integration/v201707-py2/controls/service_spec.rb → test/integration/v3000-py3/controls/service_spec.rb Переглянути файл


+ 18
- 0
test/integration/v3000-py3/inspec.yml Переглянути файл

@@ -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

test/salt/pillar/v201707-py2.sls → test/salt/pillar/v3000-py3.sls Переглянути файл

@@ -2,4 +2,5 @@
# vim: ft=yaml
---
salt:
release: '2017.7'
release: '3000'
py_ver: 'py3'

Завантаження…
Відмінити
Зберегти