diff --git a/.rubocop.yml b/.rubocop.yml index 999681bb620783a4964cdafa4f1eb3c97a1c08c5..3a1f7aa396f0c95d5f4821793dec72c8badf7f7b 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -20,6 +20,9 @@ AllCops: - test/integration/**/serverspec/* # Any offenses that should be fixed, e.g. collected via. `rubocop --auto-gen-config` +Lint/EmptyWhen: + Exclude: + - test/integration/default/controls/config_spec.rb Style/FormatStringToken: Exclude: - - test/integration/tomcat_install/controls/yaml_dump_spec.rb + - test/integration/default/controls/yaml_dump_spec.rb diff --git a/.travis.yml b/.travis.yml index 8d0c9aeffa2b3714358672200a76b1f61a966891..2ee34c5ab187bcebbece81fcb825fa43a7bfccfd 100644 --- a/.travis.yml +++ b/.travis.yml @@ -58,43 +58,42 @@ 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` - - env: INSTANCE=tomcat-install-debian-10-master-py3 - - env: INSTANCE=tomcat-install-ubuntu-1804-master-py3 - # - env: INSTANCE=tomcat-extend-ubuntu-1804-master-py3 - # - env: INSTANCE=tomcat-install-centos-8-master-py3 - - env: INSTANCE=tomcat-install-fedora-31-master-py3 - - env: INSTANCE=tomcat-install-opensuse-leap-151-master-py3 - # - env: INSTANCE=tomcat-install-amazonlinux-2-master-py3 - # - env: INSTANCE=tomcat-install-arch-base-latest-master-py2 - # - env: INSTANCE=tomcat-install-debian-10-3000-1-py3 - # - env: INSTANCE=tomcat-install-ubuntu-1804-3000-1-py3 - # - env: INSTANCE=tomcat-install-centos-8-3000-1-py3 - # - env: INSTANCE=tomcat-install-fedora-31-3000-1-py3 - # - env: INSTANCE=tomcat-install-opensuse-leap-151-3000-1-py3 - - env: INSTANCE=tomcat-install-amazonlinux-2-3000-1-py3 - # - env: INSTANCE=tomcat-install-arch-base-latest-3000-1-py2 - # - env: INSTANCE=tomcat-install-debian-10-2019-2-py3 - - env: INSTANCE=tomcat-install-debian-9-2019-2-py3 - # - env: INSTANCE=tomcat-install-ubuntu-1804-2019-2-py3 - # - env: INSTANCE=tomcat-install-ubuntu-1604-2019-2-py3 - # - env: INSTANCE=tomcat-install-centos-8-2019-2-py3 - - env: INSTANCE=tomcat-install-centos-7-2019-2-py3 - # - env: INSTANCE=tomcat-install-fedora-31-2019-2-py3 - # - env: INSTANCE=tomcat-install-opensuse-leap-151-2019-2-py3 - # - env: INSTANCE=tomcat-install-amazonlinux-2-2019-2-py3 - # - env: INSTANCE=tomcat-install-ubuntu-1804-2019-2-py2 - # - env: INSTANCE=tomcat-install-amazonlinux-1-2019-2-py2 - # - env: INSTANCE=tomcat-install-arch-base-latest-2019-2-py2 - # - env: INSTANCE=tomcat-install-centos-7-2018-3-py3 - # - env: INSTANCE=tomcat-install-fedora-30-2018-3-py3 - # - env: INSTANCE=tomcat-install-debian-9-2018-3-py2 - # - env: INSTANCE=tomcat-install-debian-8-2018-3-py2 - # - env: INSTANCE=tomcat-install-ubuntu-1804-2018-3-py2 - # - env: INSTANCE=tomcat-install-ubuntu-1604-2018-3-py2 - # - env: INSTANCE=tomcat-install-centos-6-2018-3-py2 - # - env: INSTANCE=tomcat-install-opensuse-leap-151-2018-3-py2 - # - env: INSTANCE=tomcat-install-amazonlinux-1-2018-3-py2 - # - env: INSTANCE=tomcat-install-arch-base-latest-2018-3-py2 + - env: INSTANCE=default-debian-10-master-py3 + - env: INSTANCE=default-ubuntu-1804-master-py3 + # - env: INSTANCE=default-centos-8-master-py3 + - env: INSTANCE=default-fedora-31-master-py3 + - env: INSTANCE=default-opensuse-leap-151-master-py3 + # - env: INSTANCE=default-amazonlinux-2-master-py3 + # - env: INSTANCE=default-arch-base-latest-master-py2 + # - env: INSTANCE=default-debian-10-3000-1-py3 + # - env: INSTANCE=default-ubuntu-1804-3000-1-py3 + # - env: INSTANCE=default-centos-8-3000-1-py3 + # - env: INSTANCE=default-fedora-31-3000-1-py3 + # - env: INSTANCE=default-opensuse-leap-151-3000-1-py3 + - env: INSTANCE=default-amazonlinux-2-3000-1-py3 + # - env: INSTANCE=default-arch-base-latest-3000-1-py2 + # - env: INSTANCE=default-debian-10-2019-2-py3 + - env: INSTANCE=default-debian-9-2019-2-py3 + # - env: INSTANCE=default-ubuntu-1804-2019-2-py3 + # - env: INSTANCE=default-ubuntu-1604-2019-2-py3 + # - env: INSTANCE=default-centos-8-2019-2-py3 + - env: INSTANCE=default-centos-7-2019-2-py3 + # - env: INSTANCE=default-fedora-31-2019-2-py3 + # - env: INSTANCE=default-opensuse-leap-151-2019-2-py3 + # - env: INSTANCE=default-amazonlinux-2-2019-2-py3 + # - env: INSTANCE=default-ubuntu-1804-2019-2-py2 + # - env: INSTANCE=default-amazonlinux-1-2019-2-py2 + # - env: INSTANCE=default-arch-base-latest-2019-2-py2 + # - env: INSTANCE=default-centos-7-2018-3-py3 + # - env: INSTANCE=default-fedora-30-2018-3-py3 + # - env: INSTANCE=default-debian-9-2018-3-py2 + - env: INSTANCE=default-debian-8-2018-3-py2 + # - env: INSTANCE=default-ubuntu-1804-2018-3-py2 + # - env: INSTANCE=default-ubuntu-1604-2018-3-py2 + # - env: INSTANCE=default-centos-6-2018-3-py2 + # - env: INSTANCE=default-opensuse-leap-151-2018-3-py2 + # - env: INSTANCE=default-amazonlinux-1-2018-3-py2 + # - env: INSTANCE=default-arch-base-latest-2018-3-py2 ## Define the release stage that runs `semantic-release` - stage: 'release' diff --git a/kitchen.yml b/kitchen.yml index 4dc8824367f17b86ff7960906ad5a994b5a0356b..2c3e37000e89a71ad0e5ce9bd97eaa005506e553 100644 --- a/kitchen.yml +++ b/kitchen.yml @@ -173,28 +173,15 @@ verifier: - cli suites: - - name: tomcat_install + - name: default provisioner: state_top: base: '*': - tomcat.yaml_dump - tomcat - pillars: - top.sls: - base: - '*': - - tomcat - pillars_from_files: - tomcat.sls: pillar.example - verifier: - inspec_tests: - - path: test/integration/tomcat_install - - name: tomcat_extend - provisioner: - state_top: - base: - '*': + - tomcat.native + - tomcat.config - tomcat.manager - tomcat.vhosts - tomcat.expires @@ -207,6 +194,9 @@ suites: - tomcat pillars_from_files: tomcat.sls: pillar.example + dependencies: + - name: comparison_files + path: ./test/salt verifier: inspec_tests: - - path: test/integration/tomcat_extend + - path: test/integration/default diff --git a/test/integration/tomcat_extend/README.md b/test/integration/default/README.md similarity index 72% rename from test/integration/tomcat_extend/README.md rename to test/integration/default/README.md index c0f5e1b448bbaaae04409797f9afc32b5beab15b..37cf963c3f4f691c03ad64220d79986891420116 100644 --- a/test/integration/tomcat_extend/README.md +++ b/test/integration/default/README.md @@ -1,16 +1,16 @@ -# InSpec Profile: `tomcat_extend` +# InSpec Profile: `default` -This shows the implementation of the `tomcat_extend` InSpec [profile](https://github.com/inspec/inspec/blob/master/docs/profiles.md). +This shows the implementation of the `default` 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 tomcat_extend +$ inspec check default Summary ------- -Location: tomcat_extend +Location: default 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 tomcat_extend +$ inspec exec default .. 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 tomcat_extend --controls package +$ inspec exec default --controls package . Finished in 0.0025 seconds (files took 0.12449 seconds to load) diff --git a/test/integration/tomcat_install/controls/packages_spec.rb b/test/integration/default/controls/packages_spec.rb similarity index 100% rename from test/integration/tomcat_install/controls/packages_spec.rb rename to test/integration/default/controls/packages_spec.rb diff --git a/test/integration/tomcat_install/controls/services_spec.rb b/test/integration/default/controls/services_spec.rb similarity index 100% rename from test/integration/tomcat_install/controls/services_spec.rb rename to test/integration/default/controls/services_spec.rb diff --git a/test/integration/tomcat_install/controls/yaml_dump_spec.rb b/test/integration/default/controls/yaml_dump_spec.rb similarity index 100% rename from test/integration/tomcat_install/controls/yaml_dump_spec.rb rename to test/integration/default/controls/yaml_dump_spec.rb diff --git a/test/integration/tomcat_install/inspec.yml b/test/integration/default/inspec.yml similarity index 95% rename from test/integration/tomcat_install/inspec.yml rename to test/integration/default/inspec.yml index f7a8285e6f7bc753ad3a031ba3365df2782ce42f..efbfb006adc4dc66b2fcf39084a055dae8b41413 100644 --- a/test/integration/tomcat_install/inspec.yml +++ b/test/integration/default/inspec.yml @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # vim: ft=yaml --- -name: tomcat_install +name: default title: tomcat formula maintainer: SaltStack Formulas license: Apache-2.0 diff --git a/test/integration/tomcat_extend/inspec.yml b/test/integration/tomcat_extend/inspec.yml deleted file mode 100644 index 886f4086ecdb1ba6d0a265a5c210a723e6358cc1..0000000000000000000000000000000000000000 --- a/test/integration/tomcat_extend/inspec.yml +++ /dev/null @@ -1,18 +0,0 @@ -# -*- coding: utf-8 -*- -# vim: ft=yaml ---- -name: tomcat_extend -title: tomcat formula -maintainer: SaltStack Formulas -license: Apache-2.0 -summary: Verify that the extended tomcat configuration takes place correctly -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 diff --git a/test/integration/tomcat_install/README.md b/test/integration/tomcat_install/README.md deleted file mode 100644 index 2f6c6d9b4f66169e78925a46d00b53c3dfe82478..0000000000000000000000000000000000000000 --- a/test/integration/tomcat_install/README.md +++ /dev/null @@ -1,50 +0,0 @@ -# InSpec Profile: `tomcat_install` - -This shows the implementation of the `tomcat_install` 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 tomcat_install -Summary -------- -Location: tomcat_install -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 tomcat_install -.. - -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 tomcat_install --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).