diff --git a/.travis.yml b/.travis.yml index e97a48a..2d8b46a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -50,7 +50,8 @@ 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=default-debian-10-master-py3 + # - env: INSTANCE=default-debian-10-master-py3 + - env: INSTANCE=vimrc-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 diff --git a/kitchen.yml b/kitchen.yml index c3b6b00..9f237f8 100644 --- a/kitchen.yml +++ b/kitchen.yml @@ -190,3 +190,26 @@ suites: verifier: inspec_tests: - path: test/integration/default + - name: vimrc + provisioner: + state_top: + base: + '*': + - users.vimrc + pillars: + top.sls: + base: + '*': + - users + - vimrc + pillars_from_files: + users.sls: test/salt/pillar/default.sls + vimrc.sls: test/salt/pillar/vimrc.sls + dependencies: + - name: vim + repo: git + source: https://github.com/saltstack-formulas/vim-formula.git + verifier: + inspec_tests: + - path: test/integration/default + - path: test/integration/vimrc diff --git a/test/integration/vimrc/README.md b/test/integration/vimrc/README.md new file mode 100644 index 0000000..c8acc10 --- /dev/null +++ b/test/integration/vimrc/README.md @@ -0,0 +1,50 @@ +# InSpec Profile: `vimrc` + +This shows the implementation of the `vimrc` 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 vimrc +Summary +------- +Location: vimrc +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 vimrc +.. + +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 vimrc --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). diff --git a/test/integration/vimrc/inspec.yml b/test/integration/vimrc/inspec.yml new file mode 100644 index 0000000..cab2eb2 --- /dev/null +++ b/test/integration/vimrc/inspec.yml @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- +# vim: ft=yaml +--- +name: vimrc +title: users formula +maintainer: SaltStack Formulas +license: Apache-2.0 +summary: Verify that the `.vimrc` file is configured correctly for specified users +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