Ver código fonte

Merge pull request #216 from myii/add-test-vimrc-generation

fix(vimrc): ensure `vimrc` state runs
tags/v0.48.4
Niels Abspoel 5 anos atrás
pai
commit
1a96921e89
Nenhuma conta vinculada ao e-mail do autor do commit
9 arquivos alterados com 123 adições e 3 exclusões
  1. +2
    -1
      .travis.yml
  2. +23
    -0
      kitchen.yml
  3. +50
    -0
      test/integration/vimrc/README.md
  4. +11
    -0
      test/integration/vimrc/controls/config_spec.rb
  5. +18
    -0
      test/integration/vimrc/inspec.yml
  6. +0
    -1
      test/salt/pillar/default.sls
  7. +11
    -0
      test/salt/pillar/vimrc.sls
  8. +7
    -0
      users/files/vimrc/vimrc
  9. +1
    -1
      users/vimrc.sls

+ 2
- 1
.travis.yml Ver arquivo

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

+ 23
- 0
kitchen.yml Ver arquivo

@@ -192,3 +192,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

+ 50
- 0
test/integration/vimrc/README.md Ver arquivo

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

+ 11
- 0
test/integration/vimrc/controls/config_spec.rb Ver arquivo

@@ -0,0 +1,11 @@
# frozen_string_literal: true

control 'vimrc is managed' do
title 'formula should manage .vimrc'

describe file('/home/vim_user/.vimrc') do
it { should be_owned_by 'vim_user' }
its('mode') { should cmp '0644' }
its('content') { should match(/syntax on/) }
end
end

+ 18
- 0
test/integration/vimrc/inspec.yml Ver arquivo

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

+ 0
- 1
test/salt/pillar/default.sls Ver arquivo

@@ -2,7 +2,6 @@
# vim: ft=yaml
---
users-formula:
use_vim_formula: true
lookup: # override the defauls in map.jinja
root_group: root


+ 11
- 0
test/salt/pillar/vimrc.sls Ver arquivo

@@ -0,0 +1,11 @@
# -*- coding: utf-8 -*-
# vim: ft=yaml
---
users-formula:
use_vim_formula: true

users:
## Minimal required pillar values
vim_user:
fullname: Vim User
manage_vimrc: true

+ 7
- 0
users/files/vimrc/vimrc Ver arquivo

@@ -1,3 +1,9 @@
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" File managed by Salt at <{{ source }}>.
" Your changes will be overwritten.
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"
{% raw -%}
" URL: http://vim.wikia.com/wiki/Example_vimrc
" Authors: http://vim.wikia.com/wiki/Vim_on_Freenode
" Description: A minimal, but feature rich, example .vimrc. If you are a
@@ -158,3 +164,4 @@ nnoremap <C-L> :nohl<CR><C-L>


"------------------------------------------------------------
{%- endraw %}

+ 1
- 1
users/vimrc.sls Ver arquivo

@@ -1,6 +1,6 @@
{% from "users/map.jinja" import users with context %}

{% if users.use_vim_formula %}
{% if salt['pillar.get']('users-formula:use_vim_formula', False) %}

include:
- users

Carregando…
Cancelar
Salvar