serverspec 0.2.16 → 0.2.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/serverspec/commands/base.rb +16 -0
- data/lib/serverspec/commands/solaris.rb +11 -0
- data/lib/serverspec/matchers.rb +4 -0
- data/lib/serverspec/matchers/have_gid.rb +6 -0
- data/lib/serverspec/matchers/have_home_directory.rb +6 -0
- data/lib/serverspec/matchers/have_login_shell.rb +6 -0
- data/lib/serverspec/matchers/have_uid.rb +6 -0
- data/lib/serverspec/version.rb +1 -1
- data/spec/debian/commands_spec.rb +20 -0
- data/spec/debian/matchers_spec.rb +4 -0
- data/spec/gentoo/commands_spec.rb +20 -0
- data/spec/gentoo/matchers_spec.rb +4 -0
- data/spec/redhat/commands_spec.rb +20 -0
- data/spec/redhat/matchers_spec.rb +4 -0
- data/spec/solaris/commands_spec.rb +24 -5
- data/spec/solaris/matchers_spec.rb +4 -0
- data/spec/support/shared_matcher_examples.rb +48 -0
- metadata +102 -90
@@ -83,6 +83,22 @@ module Serverspec
|
|
83
83
|
"id #{user} | awk '{print $3}' | grep #{group}"
|
84
84
|
end
|
85
85
|
|
86
|
+
def check_gid group, gid
|
87
|
+
"getent group | grep -w ^#{group} | cut -f 3 -d ':' | grep -w #{gid}"
|
88
|
+
end
|
89
|
+
|
90
|
+
def check_uid user, uid
|
91
|
+
"id #{user} | grep uid=#{uid}("
|
92
|
+
end
|
93
|
+
|
94
|
+
def check_login_shell user, path_to_shell
|
95
|
+
"grep -w ^#{user} /etc/passwd | cut -f 7 -d ':' | grep -w #{path_to_shell}"
|
96
|
+
end
|
97
|
+
|
98
|
+
def check_home_directory user, path_to_home
|
99
|
+
"grep -w ^#{user} /etc/passwd | cut -f 6 -d ':' | grep -w #{path_to_home}"
|
100
|
+
end
|
101
|
+
|
86
102
|
def check_iptables_rule rule, table=nil, chain=nil
|
87
103
|
cmd = "iptables"
|
88
104
|
cmd += " -t #{table}" if table
|
@@ -53,6 +53,17 @@ module Serverspec
|
|
53
53
|
end
|
54
54
|
commands.join(' && ')
|
55
55
|
end
|
56
|
+
|
57
|
+
def check_file_contain_within file, expected_pattern, from=nil, to=nil
|
58
|
+
from ||= '1'
|
59
|
+
to ||= '$'
|
60
|
+
checker = check_file_contain("/dev/stdin", expected_pattern)
|
61
|
+
"sed -n '#{from},#{to}p' #{file} | #{checker}"
|
62
|
+
end
|
63
|
+
|
64
|
+
def check_belonging_group user, group
|
65
|
+
"id -Gn #{user} | grep #{group}"
|
66
|
+
end
|
56
67
|
end
|
57
68
|
end
|
58
69
|
end
|
data/lib/serverspec/matchers.rb
CHANGED
@@ -14,6 +14,10 @@ require 'serverspec/matchers/have_cron_entry'
|
|
14
14
|
require 'serverspec/matchers/be_linked_to'
|
15
15
|
require 'serverspec/matchers/be_installed_by_gem'
|
16
16
|
require 'serverspec/matchers/belong_to_group'
|
17
|
+
require 'serverspec/matchers/have_gid'
|
18
|
+
require 'serverspec/matchers/have_uid'
|
19
|
+
require 'serverspec/matchers/have_login_shell'
|
20
|
+
require 'serverspec/matchers/have_home_directory'
|
17
21
|
require 'serverspec/matchers/have_iptables_rule'
|
18
22
|
require 'serverspec/matchers/get_stdout'
|
19
23
|
require 'serverspec/matchers/be_zfs'
|
data/lib/serverspec/version.rb
CHANGED
@@ -113,6 +113,26 @@ describe 'check_belonging_group', :os => :debian do
|
|
113
113
|
it { should eq "id root | awk '{print $3}' | grep wheel" }
|
114
114
|
end
|
115
115
|
|
116
|
+
describe 'have_gid', :os => :debian do
|
117
|
+
subject { commands.check_gid('root', 0) }
|
118
|
+
it { should eq "getent group | grep -w ^root | cut -f 3 -d ':' | grep -w 0" }
|
119
|
+
end
|
120
|
+
|
121
|
+
describe 'have_uid', :os => :debian do
|
122
|
+
subject { commands.check_uid('root', 0) }
|
123
|
+
it { should eq "id root | grep uid=0(" }
|
124
|
+
end
|
125
|
+
|
126
|
+
describe 'have_login_shell', :os => :debian do
|
127
|
+
subject { commands.check_login_shell('root', '/bin/bash') }
|
128
|
+
it { should eq "grep -w ^root /etc/passwd | cut -f 7 -d ':' | grep -w /bin/bash" }
|
129
|
+
end
|
130
|
+
|
131
|
+
describe 'have_home_directory', :os => :debian do
|
132
|
+
subject { commands.check_home_directory('root', '/root') }
|
133
|
+
it { should eq "grep -w ^root /etc/passwd | cut -f 6 -d ':' | grep -w /root" }
|
134
|
+
end
|
135
|
+
|
116
136
|
describe 'check_ipatbles', :os => :debian do
|
117
137
|
context 'check a rule without a table and a chain' do
|
118
138
|
subject { commands.check_iptables_rule('-P INPUT ACCEPT') }
|
@@ -31,6 +31,10 @@ describe 'Serverspec matchers of Debian family', :os => :debian do
|
|
31
31
|
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
32
32
|
|
33
33
|
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
34
|
+
it_behaves_like 'support have_gid matcher', 'root', 0
|
35
|
+
it_behaves_like 'support have_uid matcher', 'root', 0
|
36
|
+
it_behaves_like 'support have_login_shell matcher', 'root', '/bin/bash'
|
37
|
+
it_behaves_like 'support have_home_directory matcher', 'root', '/root'
|
34
38
|
|
35
39
|
it_behaves_like 'support have_iptables_rule matcher', '-P INPUT ACCEPT'
|
36
40
|
it_behaves_like 'support have_iptables_rule.with_table.with_chain matcher', '-P INPUT ACCEPT', 'mangle', 'INPUT'
|
@@ -112,6 +112,26 @@ describe 'check_belonging_group', :os => :gentoo do
|
|
112
112
|
it { should eq "id root | awk '{print $3}' | grep wheel" }
|
113
113
|
end
|
114
114
|
|
115
|
+
describe 'have_gid', :os => :gentoo do
|
116
|
+
subject { commands.check_gid('root', 0) }
|
117
|
+
it { should eq "getent group | grep -w ^root | cut -f 3 -d ':' | grep -w 0" }
|
118
|
+
end
|
119
|
+
|
120
|
+
describe 'have_uid', :os => :gentoo do
|
121
|
+
subject { commands.check_uid('root', 0) }
|
122
|
+
it { should eq "id root | grep uid=0(" }
|
123
|
+
end
|
124
|
+
|
125
|
+
describe 'have_login_shell', :os => :gentoo do
|
126
|
+
subject { commands.check_login_shell('root', '/bin/bash') }
|
127
|
+
it { should eq "grep -w ^root /etc/passwd | cut -f 7 -d ':' | grep -w /bin/bash" }
|
128
|
+
end
|
129
|
+
|
130
|
+
describe 'have_home_directory', :os => :gentoo do
|
131
|
+
subject { commands.check_home_directory('root', '/root') }
|
132
|
+
it { should eq "grep -w ^root /etc/passwd | cut -f 6 -d ':' | grep -w /root" }
|
133
|
+
end
|
134
|
+
|
115
135
|
describe 'check_ipatbles', :os => :gentoo do
|
116
136
|
context 'check a rule without a table and a chain' do
|
117
137
|
subject { commands.check_iptables_rule('-P INPUT ACCEPT') }
|
@@ -32,6 +32,10 @@ describe 'Serverspec matchers of Gentoo family', :os => :gentoo do
|
|
32
32
|
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
33
33
|
|
34
34
|
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
35
|
+
it_behaves_like 'support have_gid matcher', 'root', 0
|
36
|
+
it_behaves_like 'support have_uid matcher', 'root', 0
|
37
|
+
it_behaves_like 'support have_login_shell matcher', 'root', '/bin/bash'
|
38
|
+
it_behaves_like 'support have_home_directory matcher', 'root', '/root'
|
35
39
|
|
36
40
|
it_behaves_like 'support have_iptables_rule matcher', '-P INPUT ACCEPT'
|
37
41
|
it_behaves_like 'support have_iptables_rule.with_table.with_chain matcher', '-P INPUT ACCEPT', 'mangle', 'INPUT'
|
@@ -112,6 +112,26 @@ describe 'check_belonging_group', :os => :redhat do
|
|
112
112
|
it { should eq "id root | awk '{print $3}' | grep wheel" }
|
113
113
|
end
|
114
114
|
|
115
|
+
describe 'have_gid', :os => :redhat do
|
116
|
+
subject { commands.check_gid('root', 0) }
|
117
|
+
it { should eq "getent group | grep -w ^root | cut -f 3 -d ':' | grep -w 0" }
|
118
|
+
end
|
119
|
+
|
120
|
+
describe 'have_uid', :os => :redhat do
|
121
|
+
subject { commands.check_uid('root', 0) }
|
122
|
+
it { should eq "id root | grep uid=0(" }
|
123
|
+
end
|
124
|
+
|
125
|
+
describe 'have_login_shell', :os => :redhat do
|
126
|
+
subject { commands.check_login_shell('root', '/bin/bash') }
|
127
|
+
it { should eq "grep -w ^root /etc/passwd | cut -f 7 -d ':' | grep -w /bin/bash" }
|
128
|
+
end
|
129
|
+
|
130
|
+
describe 'have_home_directory', :os => :redhat do
|
131
|
+
subject { commands.check_home_directory('root', '/root') }
|
132
|
+
it { should eq "grep -w ^root /etc/passwd | cut -f 6 -d ':' | grep -w /root" }
|
133
|
+
end
|
134
|
+
|
115
135
|
describe 'check_ipatbles', :os => :redhat do
|
116
136
|
context 'check a rule without a table and a chain' do
|
117
137
|
subject { commands.check_iptables_rule('-P INPUT ACCEPT') }
|
@@ -33,6 +33,10 @@ describe 'Serverspec matchers of Red Hat family', :os => :redhat do
|
|
33
33
|
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
34
34
|
|
35
35
|
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
36
|
+
it_behaves_like 'support have_gid matcher', 'root', 0
|
37
|
+
it_behaves_like 'support have_uid matcher', 'root', 0
|
38
|
+
it_behaves_like 'support have_login_shell matcher', 'root', '/bin/bash'
|
39
|
+
it_behaves_like 'support have_home_directory matcher', 'root', '/root'
|
36
40
|
|
37
41
|
it_behaves_like 'support have_iptables_rule matcher', '-P INPUT ACCEPT'
|
38
42
|
it_behaves_like 'support have_iptables_rule.with_table.with_chain matcher', '-P INPUT ACCEPT', 'mangle', 'INPUT'
|
@@ -58,22 +58,22 @@ end
|
|
58
58
|
describe 'check_file_contain_within', :os => :solaris do
|
59
59
|
context 'contain a pattern in the file' do
|
60
60
|
subject { commands.check_file_contain_within('Gemfile', 'rspec') }
|
61
|
-
it { should eq "sed -n '1,$p' Gemfile | grep -q 'rspec'
|
61
|
+
it { should eq "sed -n '1,$p' Gemfile | grep -q 'rspec' /dev/stdin" }
|
62
62
|
end
|
63
63
|
|
64
64
|
context 'contain a pattern after a line in a file' do
|
65
65
|
subject { commands.check_file_contain_within('Gemfile', 'rspec', '/^group :test do/') }
|
66
|
-
it { should eq "sed -n '/^group :test do/,$p' Gemfile | grep -q 'rspec'
|
66
|
+
it { should eq "sed -n '/^group :test do/,$p' Gemfile | grep -q 'rspec' /dev/stdin" }
|
67
67
|
end
|
68
68
|
|
69
69
|
context 'contain a pattern before a line in a file' do
|
70
70
|
subject {commands.check_file_contain_within('Gemfile', 'rspec', nil, '/^end/') }
|
71
|
-
it { should eq "sed -n '1,/^end/p' Gemfile | grep -q 'rspec'
|
71
|
+
it { should eq "sed -n '1,/^end/p' Gemfile | grep -q 'rspec' /dev/stdin" }
|
72
72
|
end
|
73
73
|
|
74
74
|
context 'contain a pattern from within a line and another line in a file' do
|
75
75
|
subject { commands.check_file_contain_within('Gemfile', 'rspec', '/^group :test do/', '/^end/') }
|
76
|
-
it { should eq "sed -n '/^group :test do/,/^end/p' Gemfile | grep -q 'rspec'
|
76
|
+
it { should eq "sed -n '/^group :test do/,/^end/p' Gemfile | grep -q 'rspec' /dev/stdin" }
|
77
77
|
end
|
78
78
|
end
|
79
79
|
|
@@ -109,9 +109,28 @@ end
|
|
109
109
|
|
110
110
|
describe 'check_belonging_group', :os => :solaris do
|
111
111
|
subject { commands.check_belonging_group('root', 'wheel') }
|
112
|
-
it { should eq "id root |
|
112
|
+
it { should eq "id -Gn root | grep wheel" }
|
113
113
|
end
|
114
114
|
|
115
|
+
describe 'have_gid', :os => :solaris do
|
116
|
+
subject { commands.check_gid('root', 0) }
|
117
|
+
it { should eq "getent group | grep -w ^root | cut -f 3 -d ':' | grep -w 0" }
|
118
|
+
end
|
119
|
+
|
120
|
+
describe 'have_uid', :os => :solaris do
|
121
|
+
subject { commands.check_uid('root', 0) }
|
122
|
+
it { should eq "id root | grep uid=0(" }
|
123
|
+
end
|
124
|
+
|
125
|
+
describe 'have_login_shell', :os => :solaris do
|
126
|
+
subject { commands.check_login_shell('root', '/bin/bash') }
|
127
|
+
it { should eq "grep -w ^root /etc/passwd | cut -f 7 -d ':' | grep -w /bin/bash" }
|
128
|
+
end
|
129
|
+
|
130
|
+
describe 'have_home_directory', :os => :solaris do
|
131
|
+
subject { commands.check_home_directory('root', '/root') }
|
132
|
+
it { should eq "grep -w ^root /etc/passwd | cut -f 6 -d ':' | grep -w /root" }
|
133
|
+
end
|
115
134
|
|
116
135
|
describe 'check_zfs', :os => :solaris do
|
117
136
|
context 'check without properties' do
|
@@ -32,6 +32,10 @@ describe 'Serverspec matchers of Solaris family', :os => :solaris do
|
|
32
32
|
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
33
33
|
|
34
34
|
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
35
|
+
it_behaves_like 'support have_gid matcher', 'root', 0
|
36
|
+
it_behaves_like 'support have_uid matcher', 'root', 0
|
37
|
+
it_behaves_like 'support have_login_shell matcher', 'root', '/bin/bash'
|
38
|
+
it_behaves_like 'support have_home_directory matcher', 'root', '/root'
|
35
39
|
|
36
40
|
it_behaves_like 'support be_zfs matcher', 'rpool'
|
37
41
|
it_behaves_like 'support be_zfs.property matcher', 'rpool', { 'mountpoint' => '/rpool' }
|
@@ -322,6 +322,54 @@ shared_examples_for 'support belong_to_group matcher' do |user, group|
|
|
322
322
|
end
|
323
323
|
end
|
324
324
|
|
325
|
+
shared_examples_for 'support have_gid matcher' do |group, gid|
|
326
|
+
describe 'have_gid' do
|
327
|
+
describe group do
|
328
|
+
it { should have_gid gid }
|
329
|
+
end
|
330
|
+
|
331
|
+
describe 'dummygroup' do
|
332
|
+
it { should_not have_gid 'invalid-gid' }
|
333
|
+
end
|
334
|
+
end
|
335
|
+
end
|
336
|
+
|
337
|
+
shared_examples_for 'support have_uid matcher' do |user, uid|
|
338
|
+
describe 'have_uid' do
|
339
|
+
describe user do
|
340
|
+
it { should have_uid uid }
|
341
|
+
end
|
342
|
+
|
343
|
+
describe 'dummyuser' do
|
344
|
+
it { should_not have_uid 'invalid-uid' }
|
345
|
+
end
|
346
|
+
end
|
347
|
+
end
|
348
|
+
|
349
|
+
shared_examples_for 'support have_login_shell matcher' do |user, path_to_shell|
|
350
|
+
describe 'have_login_shell' do
|
351
|
+
describe user do
|
352
|
+
it { should have_login_shell path_to_shell }
|
353
|
+
end
|
354
|
+
|
355
|
+
describe 'dummyuser' do
|
356
|
+
it { should_not have_login_shell 'invalid-login-shell' }
|
357
|
+
end
|
358
|
+
end
|
359
|
+
end
|
360
|
+
|
361
|
+
shared_examples_for 'support have_home_directory matcher' do |user, path_to_home|
|
362
|
+
describe 'have_home_directory' do
|
363
|
+
describe user do
|
364
|
+
it { should have_home_directory path_to_home }
|
365
|
+
end
|
366
|
+
|
367
|
+
describe 'dummyuser' do
|
368
|
+
it { should_not have_home_directory 'invalid-home-directory' }
|
369
|
+
end
|
370
|
+
end
|
371
|
+
end
|
372
|
+
|
325
373
|
shared_examples_for 'support have_iptables_rule matcher' do |rule|
|
326
374
|
describe 'have_iptables_rule' do
|
327
375
|
describe 'iptables' do
|
metadata
CHANGED
@@ -1,105 +1,104 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: serverspec
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 53
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 2
|
9
|
+
- 17
|
10
|
+
version: 0.2.17
|
6
11
|
platform: ruby
|
7
|
-
authors:
|
12
|
+
authors:
|
8
13
|
- Gosuke Miyashita
|
9
14
|
autorequire:
|
10
15
|
bindir: bin
|
11
16
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
17
|
+
|
18
|
+
date: 2013-05-01 00:00:00 +09:00
|
19
|
+
default_executable:
|
20
|
+
dependencies:
|
21
|
+
- !ruby/object:Gem::Dependency
|
15
22
|
name: net-ssh
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
|
-
requirements:
|
19
|
-
- - ! '>='
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
version: '0'
|
22
|
-
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ! '>='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '0'
|
30
|
-
- !ruby/object:Gem::Dependency
|
31
|
-
name: rspec
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
33
25
|
none: false
|
34
|
-
requirements:
|
35
|
-
- -
|
36
|
-
- !ruby/object:Gem::Version
|
37
|
-
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
hash: 3
|
30
|
+
segments:
|
31
|
+
- 0
|
32
|
+
version: "0"
|
38
33
|
type: :runtime
|
34
|
+
version_requirements: *id001
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
name: rspec
|
39
37
|
prerelease: false
|
40
|
-
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - ! '>='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
46
|
-
- !ruby/object:Gem::Dependency
|
47
|
-
name: highline
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
49
39
|
none: false
|
50
|
-
requirements:
|
51
|
-
- -
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
|
40
|
+
requirements:
|
41
|
+
- - ">="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
hash: 3
|
44
|
+
segments:
|
45
|
+
- 0
|
46
|
+
version: "0"
|
54
47
|
type: :runtime
|
48
|
+
version_requirements: *id002
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
name: highline
|
55
51
|
prerelease: false
|
56
|
-
|
52
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
57
53
|
none: false
|
58
|
-
requirements:
|
59
|
-
- -
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
|
62
|
-
|
54
|
+
requirements:
|
55
|
+
- - ">="
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
hash: 3
|
58
|
+
segments:
|
59
|
+
- 0
|
60
|
+
version: "0"
|
61
|
+
type: :runtime
|
62
|
+
version_requirements: *id003
|
63
|
+
- !ruby/object:Gem::Dependency
|
63
64
|
name: bundler
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
|
-
requirements:
|
67
|
-
- - ~>
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: '1.3'
|
70
|
-
type: :development
|
71
65
|
prerelease: false
|
72
|
-
|
66
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
73
67
|
none: false
|
74
|
-
requirements:
|
68
|
+
requirements:
|
75
69
|
- - ~>
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
requirements:
|
83
|
-
- - ! '>='
|
84
|
-
- !ruby/object:Gem::Version
|
85
|
-
version: '0'
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
hash: 9
|
72
|
+
segments:
|
73
|
+
- 1
|
74
|
+
- 3
|
75
|
+
version: "1.3"
|
86
76
|
type: :development
|
77
|
+
version_requirements: *id004
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: rake
|
87
80
|
prerelease: false
|
88
|
-
|
81
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
89
82
|
none: false
|
90
|
-
requirements:
|
91
|
-
- -
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
83
|
+
requirements:
|
84
|
+
- - ">="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
hash: 3
|
87
|
+
segments:
|
88
|
+
- 0
|
89
|
+
version: "0"
|
90
|
+
type: :development
|
91
|
+
version_requirements: *id005
|
92
|
+
description: RSpec tests for your servers provisioned by Puppet, Chef or anything else
|
93
|
+
email:
|
97
94
|
- gosukenator@gmail.com
|
98
|
-
executables:
|
95
|
+
executables:
|
99
96
|
- serverspec-init
|
100
97
|
extensions: []
|
98
|
+
|
101
99
|
extra_rdoc_files: []
|
102
|
-
|
100
|
+
|
101
|
+
files:
|
103
102
|
- .gitignore
|
104
103
|
- .travis.yml
|
105
104
|
- Gemfile
|
@@ -153,11 +152,15 @@ files:
|
|
153
152
|
- lib/serverspec/matchers/contain.rb
|
154
153
|
- lib/serverspec/matchers/get_stdout.rb
|
155
154
|
- lib/serverspec/matchers/have_cron_entry.rb
|
155
|
+
- lib/serverspec/matchers/have_gid.rb
|
156
|
+
- lib/serverspec/matchers/have_home_directory.rb
|
156
157
|
- lib/serverspec/matchers/have_ipfilter_rule.rb
|
157
158
|
- lib/serverspec/matchers/have_ipnat_rule.rb
|
158
159
|
- lib/serverspec/matchers/have_iptables_rule.rb
|
160
|
+
- lib/serverspec/matchers/have_login_shell.rb
|
159
161
|
- lib/serverspec/matchers/have_svcprop.rb
|
160
162
|
- lib/serverspec/matchers/have_svcprops.rb
|
163
|
+
- lib/serverspec/matchers/have_uid.rb
|
161
164
|
- lib/serverspec/matchers/return_exit_status.rb
|
162
165
|
- lib/serverspec/matchers/return_stderr.rb
|
163
166
|
- lib/serverspec/matchers/return_stdout.rb
|
@@ -175,32 +178,41 @@ files:
|
|
175
178
|
- spec/solaris/matchers_spec.rb
|
176
179
|
- spec/spec_helper.rb
|
177
180
|
- spec/support/shared_matcher_examples.rb
|
181
|
+
has_rdoc: true
|
178
182
|
homepage: http://serverspec.org/
|
179
|
-
licenses:
|
183
|
+
licenses:
|
180
184
|
- MIT
|
181
185
|
post_install_message:
|
182
186
|
rdoc_options: []
|
183
|
-
|
187
|
+
|
188
|
+
require_paths:
|
184
189
|
- lib
|
185
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
190
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
186
191
|
none: false
|
187
|
-
requirements:
|
188
|
-
- -
|
189
|
-
- !ruby/object:Gem::Version
|
190
|
-
|
191
|
-
|
192
|
+
requirements:
|
193
|
+
- - ">="
|
194
|
+
- !ruby/object:Gem::Version
|
195
|
+
hash: 3
|
196
|
+
segments:
|
197
|
+
- 0
|
198
|
+
version: "0"
|
199
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
192
200
|
none: false
|
193
|
-
requirements:
|
194
|
-
- -
|
195
|
-
- !ruby/object:Gem::Version
|
196
|
-
|
201
|
+
requirements:
|
202
|
+
- - ">="
|
203
|
+
- !ruby/object:Gem::Version
|
204
|
+
hash: 3
|
205
|
+
segments:
|
206
|
+
- 0
|
207
|
+
version: "0"
|
197
208
|
requirements: []
|
209
|
+
|
198
210
|
rubyforge_project:
|
199
|
-
rubygems_version: 1.
|
211
|
+
rubygems_version: 1.3.7
|
200
212
|
signing_key:
|
201
213
|
specification_version: 3
|
202
214
|
summary: RSpec tests for your servers provisioned by Puppet, Chef or anything else
|
203
|
-
test_files:
|
215
|
+
test_files:
|
204
216
|
- spec/debian/commands_spec.rb
|
205
217
|
- spec/debian/matchers_spec.rb
|
206
218
|
- spec/gentoo/commands_spec.rb
|