From b47b99232cfd4d9c04c5890fe23664cdca5e6800 Mon Sep 17 00:00:00 2001 From: Imran Iqbal Date: Fri, 28 Jun 2019 04:38:30 +0100 Subject: [PATCH] ci(kitchen+travis): modify matrix to include `develop` platform * Use balanced matrix based on `template-formula` guidelines * Initial ref: https://github.com/saltstack-formulas/template-formula/issues/118 --- .cirrus.yml | 28 +++++++++-- kitchen.yml | 132 ++++++++++++++++++++++++++++++++++++++-------------- 2 files changed, 122 insertions(+), 38 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 56ef08c..1a17201 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -2,9 +2,29 @@ docker_builder: name: Test $INSTANCE env: matrix: - - INSTANCE: debian-9 - - INSTANCE: debian-8 - - INSTANCE: ubuntu-1804 - - INSTANCE: ubuntu-1604 + - INSTANCE: default-debian-9-develop-py3 + - INSTANCE: default-ubuntu-1804-develop-py3 + # - INSTANCE: default-centos-7-develop-py3 + # - INSTANCE: default-fedora-29-develop-py3 + # - INSTANCE: default-opensuse-leap-15-develop-py3 + - INSTANCE: default-debian-9-2019-2-py3 + - INSTANCE: default-ubuntu-1804-2019-2-py3 + # - INSTANCE: default-centos-7-2019-2-py3 + # - INSTANCE: default-fedora-29-2019-2-py3 + # - INSTANCE: default-opensuse-leap-15-2019-2-py3 + - INSTANCE: default-debian-9-2018-3-py2 + # - INSTANCE: default-ubuntu-1604-2018-3-py2 + # - INSTANCE: default-centos-7-2018-3-py2 + # - INSTANCE: default-fedora-29-2018-3-py2 + # TODO: Use this when fixed instead of `opensuse-leap-42` + # Ref: https://github.com/netmanagers/salt-image-builder/issues/2 + # - INSTANCE: default-opensuse-leap-15-2018-3-py2 + # - INSTANCE: default-opensuse-leap-42-2018-3-py2 + # - INSTANCE: default-debian-8-2017-7-py2 + # - INSTANCE: default-ubuntu-1604-2017-7-py2 + # TODO: Enable after improving the formula to work with other than `systemd` + # - INSTANCE: default-centos-6-2017-7-py2 + # - INSTANCE: default-fedora-28-2017-7-py2 + # - INSTANCE: default-opensuse-leap-42-2017-7-py2 bundle_install_script: bundle install verify_script: bundle exec kitchen verify $INSTANCE diff --git a/kitchen.yml b/kitchen.yml index 83d4c32..8cc61a8 100644 --- a/kitchen.yml +++ b/kitchen.yml @@ -11,48 +11,105 @@ driver: # Make sure the platforms listed below match up with # the `env.matrix` instances defined in `.travis.yml` platforms: - - name: debian-9 - driver_config: - image: debian:9 + ## SALT `develop` + - name: debian-9-develop-py3 + driver: + image: netmanagers/salt-develop-py3:debian-9 provision_command: - - apt-get update && apt-get install -y udev locales - - echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen - - locale-gen en_US.UTF-8 - platform: debian - - - name: debian-8 - driver_config: - image: debian:8 + - curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com + - sh bootstrap-salt.sh -XdPbfrq -x python3 git develop + - name: ubuntu-1804-develop-py3 + driver: + image: netmanagers/salt-develop-py3:ubuntu-18.04 provision_command: - - apt-get update && apt-get install -y udev locales - - echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen - - locale-gen en_US.UTF-8 - platform: debian - - - name: ubuntu-18.04 - driver_config: - image: ubuntu:18.04 + - curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com + - sh bootstrap-salt.sh -XdPbfrq -x python3 git develop + - name: centos-7-develop-py3 + driver: + image: netmanagers/salt-develop-py3:centos-7 provision_command: - - apt-get update && apt-get install -y udev locales && rm -rf /var/lib/apt/lists/* - - localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 - - echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen - - locale-gen en_US.UTF-8 - platform: ubuntu - - - name: ubuntu-16.04 - driver_config: - image: ubuntu:16.04 + - curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com + - sh bootstrap-salt.sh -XdPbfrq -x python3 git develop + - name: fedora-29-develop-py3 + driver: + image: netmanagers/salt-develop-py3:fedora-29 + provision_command: + - curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com + - sh bootstrap-salt.sh -XdPbfrq -x python3 git develop + - name: opensuse-leap-15-develop-py3 + driver: + image: netmanagers/salt-develop-py3:opensuse-leap-15 provision_command: - - apt-get update && apt-get install -y udev locales && rm -rf /var/lib/apt/lists/* - - localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8 - - echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen - - locale-gen en_US.UTF-8 - platform: ubuntu + - curl -o bootstrap-salt.sh -L https://bootstrap.saltstack.com + - sh bootstrap-salt.sh -XdPbfrq -x python3 git develop + run_command: /usr/lib/systemd/systemd + + ## 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-18.04 + - name: centos-7-2019-2-py3 + driver: + image: netmanagers/salt-2019.2-py3:centos-7 + - name: fedora-29-2019-2-py3 + driver: + image: netmanagers/salt-2019.2-py3:fedora-29 + - name: opensuse-leap-15-2019-2-py3 + driver: + image: netmanagers/salt-2019.2-py3:opensuse-leap-15 + 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: fedora-29-2018-3-py2 + driver: + image: netmanagers/salt-2018.3-py2:fedora-29 + # TODO: Use this when fixed instead of `opensuse-leap-42` + # Ref: https://github.com/netmanagers/salt-image-builder/issues/2 + # - name: opensuse-leap-15-2018-3-py2 + # driver: + # image: netmanagers/salt-2018.3-py2:opensuse-leap-15 + # run_command: /usr/lib/systemd/systemd + - name: opensuse-leap-42-2018-3-py2 + driver: + image: netmanagers/salt-2018.3-py2:opensuse-leap-42 + run_command: /usr/lib/systemd/systemd + + ## SALT 2017.7 + - name: debian-8-2017-7-py2 + driver: + image: netmanagers/salt-2017.7-py2:debian-8 + - name: ubuntu-1604-2017-7-py2 + driver: + image: netmanagers/salt-2017.7-py2:ubuntu-16.04 + # TODO: Modify the formula to work for non-`systemd` platforms + - name: centos-6-2017-7-py2 + driver: + image: netmanagers/salt-2017.7-py2:centos-6 + run_command: /sbin/init + - name: fedora-28-2017-7-py2 + driver: + image: netmanagers/salt-2017.7-py2:fedora-28 + - name: opensuse-leap-42-2017-7-py2 + driver: + image: netmanagers/salt-2017.7-py2:opensuse-leap-42 + run_command: /usr/lib/systemd/systemd provisioner: name: salt_solo log_level: info - salt_version: latest + salt_install: none require_chef: false formula: syslog_ng salt_copy_filter: @@ -62,6 +119,13 @@ provisioner: base: '*': - syslog_ng.config + pillars: + top.sls: + base: + '*': + - syslog_ng + pillars_from_files: + syslog_ng.sls: pillar.example verifier: # https://www.inspec.io/