puppet-lint-use_ensure_packages-check 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e86e5c8317c917d5b961274644c11b1d77d2ad1e
|
4
|
+
data.tar.gz: 02df872a3f35342b5403328eaf8ca8b3eafd932d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5b9ac063a2e50fe41924edc4559605fe3a4fd28ca22324b59c9151af0506fb608084baac18b074ee5aa9370323b01f9238024d5873837000b7ad5ecdd3c91b7e
|
7
|
+
data.tar.gz: 2dff02cdc2cbb9b141f2c36890e4e2b6ec85fa1dfed6301ac40c6e545e4023381744c3dbe35d389536dc9b5c3f6e85437a74c867498a059438ac843a342e233a
|
data/README.md
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
# puppet-lint use ensure_packages check
|
2
2
|
|
3
3
|
[![Build Status](https://travis-ci.org/ninech/puppet-lint-use_ensure_packages-check.svg?branch=master)](https://travis-ci.org/ninech/puppet-lint-use_ensure_packages-check)
|
4
|
+
[![Gem Version](https://badge.fury.io/rb/puppet-lint-use_ensure_packages-check.svg)](https://badge.fury.io/rb/puppet-lint-use_ensure_packages-check)
|
4
5
|
|
5
6
|
## Installation
|
6
7
|
|
@@ -35,6 +35,7 @@ PuppetLint.new_check(:use_ensure_packages) do
|
|
35
35
|
|
36
36
|
def check
|
37
37
|
if_indexes.each do |cond|
|
38
|
+
next if check_if_else(cond)
|
38
39
|
next if check_if(cond)
|
39
40
|
|
40
41
|
notify :warning,
|
@@ -44,6 +45,15 @@ PuppetLint.new_check(:use_ensure_packages) do
|
|
44
45
|
end
|
45
46
|
end
|
46
47
|
|
48
|
+
def check_if_else(cond)
|
49
|
+
tokens = filter_code_tokens(cond[:tokens])
|
50
|
+
|
51
|
+
return true if tokens.last.next_code_token &&
|
52
|
+
[:ELSE, :ELSIF].include?(tokens.last.next_code_token.type)
|
53
|
+
|
54
|
+
false
|
55
|
+
end
|
56
|
+
|
47
57
|
def check_if(cond)
|
48
58
|
tokens = filter_code_tokens(cond[:tokens])
|
49
59
|
|
@@ -59,6 +69,7 @@ PuppetLint.new_check(:use_ensure_packages) do
|
|
59
69
|
return false if tokens.empty?
|
60
70
|
|
61
71
|
return true unless OPTINAL_CONTENT.index do |c|
|
72
|
+
next unless tokens.length == c[:sequence].length
|
62
73
|
match_tokens(tokens, c[:sequence], c[:values])
|
63
74
|
end
|
64
75
|
|
@@ -62,6 +62,46 @@ describe 'use_ensure_packages' do
|
|
62
62
|
end
|
63
63
|
end
|
64
64
|
|
65
|
+
context 'if not defined package w/ notify' do
|
66
|
+
let(:code) do
|
67
|
+
"if ! defined (Package['foo']) {
|
68
|
+
package {'foo': ensure => present, notify => Service['apache2'];}
|
69
|
+
}"
|
70
|
+
end
|
71
|
+
|
72
|
+
it 'should not detect any problem' do
|
73
|
+
expect(problems).to have(0).problems
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
context 'if not defined package w/ else' do
|
78
|
+
let(:code) do
|
79
|
+
"if ! defined (Package['foo']) {
|
80
|
+
package {'foo': ensure => present; }
|
81
|
+
} else {
|
82
|
+
package {'bar': ensure => present; }
|
83
|
+
}"
|
84
|
+
end
|
85
|
+
|
86
|
+
it 'should not detect any problem' do
|
87
|
+
expect(problems).to have(0).problems
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
context 'if not defined package w/ elsis' do
|
92
|
+
let(:code) do
|
93
|
+
"if ! defined (Package['foo']) {
|
94
|
+
package {'foo': ensure => present; }
|
95
|
+
} elsif ! defined (Package['bar']) {
|
96
|
+
package {'bar': ensure => present; }
|
97
|
+
}"
|
98
|
+
end
|
99
|
+
|
100
|
+
it 'should not detect any problem' do
|
101
|
+
expect(problems).to have(0).problems
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
65
105
|
context 'if not defined package twice' do
|
66
106
|
let(:code) do
|
67
107
|
"if ! defined (Package['foo']) {
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: puppet-lint-use_ensure_packages-check
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marius Rieder
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-01-
|
11
|
+
date: 2017-01-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: puppet-lint
|