serverspec 0.2.24 → 0.2.25
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/backend/exec.rb +2 -0
- data/lib/serverspec/commands/darwin.rb +9 -0
- data/lib/serverspec/helper/darwin.rb +9 -0
- data/lib/serverspec/helper/obsoleted.rb +12 -0
- data/lib/serverspec/helper.rb +1 -0
- data/lib/serverspec/version.rb +1 -1
- data/lib/serverspec.rb +3 -1
- data/spec/darwin/commands_spec.rb +181 -0
- data/spec/darwin/matchers_spec.rb +77 -0
- data/spec/debian/matchers_spec.rb +2 -2
- data/spec/gentoo/matchers_spec.rb +2 -2
- data/spec/redhat/matchers_spec.rb +2 -2
- data/spec/solaris/matchers_spec.rb +2 -2
- metadata +104 -90
|
@@ -59,4 +59,16 @@ module Serverspec
|
|
|
59
59
|
exit 1
|
|
60
60
|
end
|
|
61
61
|
end
|
|
62
|
+
module DarwinHelper
|
|
63
|
+
def self.included(mod)
|
|
64
|
+
puts
|
|
65
|
+
puts "**************************************************************"
|
|
66
|
+
puts "Serverspec::DarwinHelper in spec/spec_helper.rb is deprecated."
|
|
67
|
+
puts "Use Serverspec::Helper::Darwin instead."
|
|
68
|
+
puts "Or remove spec/spec_helper.rb and run severspec-init again."
|
|
69
|
+
puts "**************************************************************"
|
|
70
|
+
puts
|
|
71
|
+
exit 1
|
|
72
|
+
end
|
|
73
|
+
end
|
|
62
74
|
end
|
data/lib/serverspec/helper.rb
CHANGED
data/lib/serverspec/version.rb
CHANGED
data/lib/serverspec.rb
CHANGED
|
@@ -13,18 +13,20 @@ require 'serverspec/commands/redhat'
|
|
|
13
13
|
require 'serverspec/commands/debian'
|
|
14
14
|
require 'serverspec/commands/gentoo'
|
|
15
15
|
require 'serverspec/commands/solaris'
|
|
16
|
+
require 'serverspec/commands/darwin'
|
|
16
17
|
|
|
17
18
|
RSpec.configure do |c|
|
|
18
19
|
c.include(Serverspec::Helper::RedHat, :os => :redhat)
|
|
19
20
|
c.include(Serverspec::Helper::Debian, :os => :debian)
|
|
20
21
|
c.include(Serverspec::Helper::Gentoo, :os => :gentoo)
|
|
21
22
|
c.include(Serverspec::Helper::Solaris, :os => :solaris)
|
|
23
|
+
c.include(Serverspec::Helper::Darwin, :os => :darwin)
|
|
22
24
|
c.add_setting :os, :default => nil
|
|
23
25
|
c.add_setting :host, :default => nil
|
|
24
26
|
c.add_setting :ssh, :default => nil
|
|
25
27
|
c.add_setting :sudo_password, :default => nil
|
|
26
28
|
c.before :each do
|
|
27
|
-
if subject == 'value'
|
|
29
|
+
if described_class.nil? && subject == 'value'
|
|
28
30
|
def subject
|
|
29
31
|
Serverspec::Filter.filter_subject example
|
|
30
32
|
end
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe 'check_file', :os => :darwin do
|
|
4
|
+
subject { commands.check_file('/etc/passwd') }
|
|
5
|
+
it { should eq 'test -f /etc/passwd' }
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
describe 'check_mounted', :os => :darwin do
|
|
9
|
+
subject { commands.check_mounted('/') }
|
|
10
|
+
it { should eq "mount | grep -w -- on\\ /" }
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
describe 'check_reachable', :os => :darwin do
|
|
14
|
+
context "connect with name from /etc/services to localhost" do
|
|
15
|
+
subject { commands.check_reachable('localhost', 'ssh', 'tcp', 1) }
|
|
16
|
+
it { should eq "nc -vvvvzt localhost ssh -w 1" }
|
|
17
|
+
end
|
|
18
|
+
context "connect with ip and port 11111 and timeout of 5" do
|
|
19
|
+
subject { commands.check_reachable('127.0.0.1', '11111', 'udp', 5) }
|
|
20
|
+
it { should eq "nc -vvvvzu 127.0.0.1 11111 -w 5" }
|
|
21
|
+
end
|
|
22
|
+
context "do a ping" do
|
|
23
|
+
subject { commands.check_reachable('127.0.0.1', nil, 'icmp', 1) }
|
|
24
|
+
it { should eq "ping -n 127.0.0.1 -w 1 -c 2" }
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
describe 'check_resolvable', :os => :darwin do
|
|
29
|
+
context "resolve localhost by hosts" do
|
|
30
|
+
subject { commands.check_resolvable('localhost', 'hosts') }
|
|
31
|
+
it { should eq "grep -w -- localhost /etc/hosts" }
|
|
32
|
+
end
|
|
33
|
+
context "resolve localhost by dns" do
|
|
34
|
+
subject { commands.check_resolvable('localhost', 'dns') }
|
|
35
|
+
it { should eq "nslookup -timeout=1 localhost" }
|
|
36
|
+
end
|
|
37
|
+
context "resolve localhost with default settings" do
|
|
38
|
+
subject { commands.check_resolvable('localhost',nil) }
|
|
39
|
+
it { should eq 'getent hosts localhost' }
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
describe 'check_directory', :os => :darwin do
|
|
44
|
+
subject { commands.check_directory('/var/log') }
|
|
45
|
+
it { should eq 'test -d /var/log' }
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
describe 'check_user', :os => :darwin do
|
|
49
|
+
subject { commands.check_user('root') }
|
|
50
|
+
it { should eq 'id root' }
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
describe 'check_group', :os => :darwin do
|
|
54
|
+
subject { commands.check_group('wheel') }
|
|
55
|
+
it { should eq 'getent group | grep -wq -- wheel' }
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
describe 'check_listening', :os => :darwin do
|
|
59
|
+
subject { commands.check_listening(80) }
|
|
60
|
+
it { should eq "netstat -tunl | grep -- :80\\ " }
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
describe 'check_running', :os => :darwin do
|
|
64
|
+
subject { commands.check_running('httpd') }
|
|
65
|
+
it { should eq 'service httpd status' }
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
describe 'check_running_under_supervisor', :os => :darwin do
|
|
69
|
+
subject { commands.check_running_under_supervisor('httpd') }
|
|
70
|
+
it { should eq 'supervisorctl status httpd' }
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
describe 'check_process', :os => :darwin do
|
|
74
|
+
subject { commands.check_process('httpd') }
|
|
75
|
+
it { should eq 'ps aux | grep -w -- httpd | grep -qv grep' }
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
describe 'check_file_contain', :os => :darwin do
|
|
79
|
+
subject { commands.check_file_contain('/etc/passwd', 'root') }
|
|
80
|
+
it { should eq "grep -q -- root /etc/passwd" }
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
describe 'check_file_contain_within', :os => :darwin do
|
|
84
|
+
context 'contain a pattern in the file' do
|
|
85
|
+
subject { commands.check_file_contain_within('Gemfile', 'rspec') }
|
|
86
|
+
it { should eq "sed -n 1,\\$p Gemfile | grep -q -- rspec -" }
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
context 'contain a pattern after a line in a file' do
|
|
90
|
+
subject { commands.check_file_contain_within('Gemfile', 'rspec', '/^group :test do/') }
|
|
91
|
+
it { should eq "sed -n /\\^group\\ :test\\ do/,\\$p Gemfile | grep -q -- rspec -" }
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
context 'contain a pattern before a line in a file' do
|
|
95
|
+
subject {commands.check_file_contain_within('Gemfile', 'rspec', nil, '/^end/') }
|
|
96
|
+
it { should eq "sed -n 1,/\\^end/p Gemfile | grep -q -- rspec -" }
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
context 'contain a pattern from within a line and another line in a file' do
|
|
100
|
+
subject { commands.check_file_contain_within('Gemfile', 'rspec', '/^group :test do/', '/^end/') }
|
|
101
|
+
it { should eq "sed -n /\\^group\\ :test\\ do/,/\\^end/p Gemfile | grep -q -- rspec -" }
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
describe 'check_mode', :os => :darwin do
|
|
106
|
+
subject { commands.check_mode('/etc/sudoers', 440) }
|
|
107
|
+
it { should eq 'stat -c %a /etc/sudoers | grep -- \\^440\\$' }
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
describe 'check_owner', :os => :darwin do
|
|
111
|
+
subject { commands.check_owner('/etc/passwd', 'root') }
|
|
112
|
+
it { should eq 'stat -c %U /etc/passwd | grep -- \\^root\\$' }
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
describe 'check_grouped', :os => :darwin do
|
|
116
|
+
subject { commands.check_grouped('/etc/passwd', 'wheel') }
|
|
117
|
+
it { should eq 'stat -c %G /etc/passwd | grep -- \\^wheel\\$' }
|
|
118
|
+
end
|
|
119
|
+
|
|
120
|
+
describe 'check_cron_entry', :os => :darwin do
|
|
121
|
+
subject { commands.check_cron_entry('root', '* * * * * /usr/local/bin/batch.sh') }
|
|
122
|
+
it { should eq 'crontab -u root -l | grep -- \\\\\\*\\ \\\\\\*\\ \\\\\\*\\ \\\\\\*\\ \\\\\\*\\ /usr/local/bin/batch.sh' }
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
describe 'check_link', :os => :darwin do
|
|
126
|
+
subject { commands.check_link('/etc/system-release', '/etc/darwin-release') }
|
|
127
|
+
it { should eq 'stat -c %N /etc/system-release | grep -- /etc/darwin-release' }
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
describe 'check_installed_by_gem', :os => :darwin do
|
|
131
|
+
subject { commands.check_installed_by_gem('jekyll') }
|
|
132
|
+
it { should eq 'gem list --local | grep -- \\^jekyll\\ ' }
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
describe 'check_belonging_group', :os => :darwin do
|
|
136
|
+
subject { commands.check_belonging_group('root', 'wheel') }
|
|
137
|
+
it { should eq "id root | awk '{print $3}' | grep -- wheel" }
|
|
138
|
+
end
|
|
139
|
+
|
|
140
|
+
describe 'have_gid', :os => :darwin do
|
|
141
|
+
subject { commands.check_gid('root', 0) }
|
|
142
|
+
it { should eq "getent group | grep -w -- \\^root | cut -f 3 -d ':' | grep -w -- 0" }
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
describe 'have_uid', :os => :darwin do
|
|
146
|
+
subject { commands.check_uid('root', 0) }
|
|
147
|
+
it { should eq "id root | grep -- \\^uid\\=0\\(" }
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
describe 'have_login_shell', :os => :darwin do
|
|
151
|
+
subject { commands.check_login_shell('root', '/bin/bash') }
|
|
152
|
+
it { should eq "getent passwd root | cut -f 7 -d ':' | grep -w -- /bin/bash" }
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
describe 'have_home_directory', :os => :darwin do
|
|
156
|
+
subject { commands.check_home_directory('root', '/root') }
|
|
157
|
+
it { should eq "getent passwd root | cut -f 6 -d ':' | grep -w -- /root" }
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
describe 'have_authorized_key', :os => :darwin do
|
|
161
|
+
key = "ssh-rsa ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGH"
|
|
162
|
+
escaped_key = key.gsub(/ /, '\ ')
|
|
163
|
+
|
|
164
|
+
context 'with commented publickey' do
|
|
165
|
+
commented_key = key + " foo@bar.local"
|
|
166
|
+
subject { commands.check_authorized_key('root', commented_key) }
|
|
167
|
+
describe 'when command insert publickey is removed comment' do
|
|
168
|
+
it { should eq "grep -w -- #{escaped_key} ~root/.ssh/authorized_keys" }
|
|
169
|
+
end
|
|
170
|
+
end
|
|
171
|
+
|
|
172
|
+
context 'with uncomented publickey' do
|
|
173
|
+
subject { commands.check_authorized_key('root', key) }
|
|
174
|
+
it { should eq "grep -w -- #{escaped_key} ~root/.ssh/authorized_keys" }
|
|
175
|
+
end
|
|
176
|
+
end
|
|
177
|
+
|
|
178
|
+
describe 'get_mode', :os => :darwin do
|
|
179
|
+
subject { commands.get_mode('/dev') }
|
|
180
|
+
it { should eq 'stat -c %a /dev' }
|
|
181
|
+
end
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe 'Serverspec matchers of Red Hat family', :os => :darwin do
|
|
4
|
+
it_behaves_like 'support be_running matcher', 'sshd'
|
|
5
|
+
it_behaves_like 'support be_running.under("supervisor") matcher', 'growthforecast'
|
|
6
|
+
it_behaves_like 'support be_running.under("not implemented") matcher', 'growthforecast'
|
|
7
|
+
it_behaves_like 'support be_listening matcher', 22
|
|
8
|
+
it_behaves_like 'support be_file matcher', '/etc/ssh/sshd_config'
|
|
9
|
+
|
|
10
|
+
it_behaves_like 'support be_mounted matcher', '/'
|
|
11
|
+
it_behaves_like 'support be_mounted.with matcher', '/'
|
|
12
|
+
it_behaves_like 'support be_mounted.only_with matcher', '/'
|
|
13
|
+
|
|
14
|
+
it_behaves_like 'support be_reachable matcher', '127.0.0.1'
|
|
15
|
+
it_behaves_like 'support be_reachable.with matcher', '127.0.0.1'
|
|
16
|
+
|
|
17
|
+
it_behaves_like 'support be_resolvable matcher', 'localhost'
|
|
18
|
+
it_behaves_like 'support be_resolvable.by matcher', 'localhost', 'hosts'
|
|
19
|
+
it_behaves_like 'support be_resolvable.by matcher', 'localhost', 'dns'
|
|
20
|
+
it_behaves_like 'support be_directory matcher', '/etc/ssh'
|
|
21
|
+
it_behaves_like 'support contain matcher', '/etc/ssh/sshd_config', 'This is the sshd server system-wide configuration file'
|
|
22
|
+
it_behaves_like 'support contain.from.to matcher', 'Gemfile', 'rspec', /^group :test do/, /^end/
|
|
23
|
+
it_behaves_like 'support contain.after matcher', 'Gemfile', 'rspec', /^group :test do/
|
|
24
|
+
it_behaves_like 'support contain.before matcher', 'Gemfile', 'rspec', /^end/
|
|
25
|
+
it_behaves_like 'support be_user matcher', 'root'
|
|
26
|
+
it_behaves_like 'support be_group matcher', 'wheel'
|
|
27
|
+
|
|
28
|
+
# Test for case of not registered in the service, but running as process.
|
|
29
|
+
it_behaves_like 'support be_running matcher', 'udevd'
|
|
30
|
+
|
|
31
|
+
it_behaves_like 'support be_mode matcher', '/etc/passwd', 644
|
|
32
|
+
|
|
33
|
+
it_behaves_like 'support be_owned_by matcher', '/etc/passwd', 'root'
|
|
34
|
+
it_behaves_like 'support be_grouped_into matcher', '/etc/passwd', 'root'
|
|
35
|
+
|
|
36
|
+
it_behaves_like 'support have_cron_entry matcher', 'cron', '* * * * * /usr/bin/foo'
|
|
37
|
+
it_behaves_like 'support have_cron_entry.with_user matcher', 'cron', '* * * * * /usr/bin/foo', 'root'
|
|
38
|
+
|
|
39
|
+
it_behaves_like 'support be_linked_to matcher', '/etc/pam.d/system-auth', '/etc/pam.d/system-auth-ac'
|
|
40
|
+
|
|
41
|
+
it_behaves_like 'support be_installed.by(gem) matcher', 'jekyll'
|
|
42
|
+
it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
|
|
43
|
+
|
|
44
|
+
it_behaves_like 'support belong_to_group matcher', 'root', 'root'
|
|
45
|
+
it_behaves_like 'support have_gid matcher', 'root', 0
|
|
46
|
+
it_behaves_like 'support have_uid matcher', 'root', 0
|
|
47
|
+
it_behaves_like 'support have_login_shell matcher', 'root', '/bin/bash'
|
|
48
|
+
it_behaves_like 'support have_home_directory matcher', 'root', '/root'
|
|
49
|
+
it_behaves_like 'support have_authorized_key matcher', 'root', 'ssh-rsa ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGH foo@bar.local'
|
|
50
|
+
|
|
51
|
+
it_behaves_like 'support be_readable matcher', '/dev'
|
|
52
|
+
it_behaves_like 'support be_readable_by_owner matcher', '/dev'
|
|
53
|
+
it_behaves_like 'support be_readable_by_group matcher', '/dev'
|
|
54
|
+
it_behaves_like 'support be_readable_by_others matcher', '/dev'
|
|
55
|
+
|
|
56
|
+
it_behaves_like 'support be_writable matcher', '/dev'
|
|
57
|
+
it_behaves_like 'support be_writable_by_owner matcher', '/dev'
|
|
58
|
+
it_behaves_like 'support be_writable_by_group matcher', '/dev'
|
|
59
|
+
it_behaves_like 'support be_writable_by_others matcher', '/dev'
|
|
60
|
+
|
|
61
|
+
it_behaves_like 'support be_executable matcher', '/dev'
|
|
62
|
+
it_behaves_like 'support be_executable_by_owner matcher', '/dev'
|
|
63
|
+
it_behaves_like 'support be_executable_by_group matcher', '/dev'
|
|
64
|
+
it_behaves_like 'support be_executable_by_others matcher', '/dev'
|
|
65
|
+
|
|
66
|
+
it_behaves_like 'support return_exit_status matcher', 'ls /tmp', 0
|
|
67
|
+
|
|
68
|
+
it_behaves_like 'support return_stdout matcher', 'cat /etc/resolv.conf', 'localhost'
|
|
69
|
+
it_behaves_like 'support return_stdout matcher with regexp', 'cat /etc/resolv.conf', /localhost/
|
|
70
|
+
|
|
71
|
+
it_behaves_like 'support return_stderr matcher', 'cat /foo', 'cat: /foo: No such file or directory'
|
|
72
|
+
it_behaves_like 'support return_stderr matcher with regexp', 'cat /foo', /No such file or directory/
|
|
73
|
+
|
|
74
|
+
it_behaves_like 'support linux kernel parameter checking with integer', 'net.ipv4.tcp_syncookies', 1
|
|
75
|
+
it_behaves_like 'support linux kernel parameter checking with string', 'kernel.osrelease', '2.6.32-131.0.15.el6.x86_64'
|
|
76
|
+
it_behaves_like 'support linux kernel parameter checking with regexp', 'net.ipv4.tcp_wmem', /4096\t16384\t4194304/
|
|
77
|
+
end
|
|
@@ -12,8 +12,8 @@ describe 'Serverspec matchers of Debian family', :os => :debian do
|
|
|
12
12
|
it_behaves_like 'support be_mounted.with matcher', '/'
|
|
13
13
|
it_behaves_like 'support be_mounted.only_with matcher', '/'
|
|
14
14
|
|
|
15
|
-
it_behaves_like 'support be_reachable matcher', '127.0.0.1
|
|
16
|
-
it_behaves_like 'support be_reachable.with matcher', '127.0.0.1
|
|
15
|
+
it_behaves_like 'support be_reachable matcher', '127.0.0.1'
|
|
16
|
+
it_behaves_like 'support be_reachable.with matcher', '127.0.0.1'
|
|
17
17
|
|
|
18
18
|
it_behaves_like 'support be_resolvable matcher', 'localhost'
|
|
19
19
|
it_behaves_like 'support be_resolvable.by matcher', 'localhost', 'hosts'
|
|
@@ -12,8 +12,8 @@ describe 'Serverspec matchers of Gentoo family', :os => :gentoo do
|
|
|
12
12
|
it_behaves_like 'support be_mounted.with matcher', '/'
|
|
13
13
|
it_behaves_like 'support be_mounted.only_with matcher', '/'
|
|
14
14
|
|
|
15
|
-
it_behaves_like 'support be_reachable matcher', '127.0.0.1
|
|
16
|
-
it_behaves_like 'support be_reachable.with matcher', '127.0.0.1
|
|
15
|
+
it_behaves_like 'support be_reachable matcher', '127.0.0.1'
|
|
16
|
+
it_behaves_like 'support be_reachable.with matcher', '127.0.0.1'
|
|
17
17
|
|
|
18
18
|
it_behaves_like 'support be_resolvable matcher', 'localhost'
|
|
19
19
|
it_behaves_like 'support be_resolvable.by matcher', 'localhost', 'hosts'
|
|
@@ -13,8 +13,8 @@ describe 'Serverspec matchers of Red Hat family', :os => :redhat do
|
|
|
13
13
|
it_behaves_like 'support be_mounted.with matcher', '/'
|
|
14
14
|
it_behaves_like 'support be_mounted.only_with matcher', '/'
|
|
15
15
|
|
|
16
|
-
it_behaves_like 'support be_reachable matcher', '127.0.0.1
|
|
17
|
-
it_behaves_like 'support be_reachable.with matcher', '127.0.0.1
|
|
16
|
+
it_behaves_like 'support be_reachable matcher', '127.0.0.1'
|
|
17
|
+
it_behaves_like 'support be_reachable.with matcher', '127.0.0.1'
|
|
18
18
|
|
|
19
19
|
it_behaves_like 'support be_resolvable matcher', 'localhost'
|
|
20
20
|
it_behaves_like 'support be_resolvable.by matcher', 'localhost', 'hosts'
|
|
@@ -12,8 +12,8 @@ describe 'Serverspec matchers of Solaris family', :os => :solaris do
|
|
|
12
12
|
it_behaves_like 'support be_mounted.with matcher', '/'
|
|
13
13
|
it_behaves_like 'support be_mounted.only_with matcher', '/'
|
|
14
14
|
|
|
15
|
-
it_behaves_like 'support be_reachable matcher', '127.0.0.1
|
|
16
|
-
it_behaves_like 'support be_reachable.with matcher', '127.0.0.1
|
|
15
|
+
it_behaves_like 'support be_reachable matcher', '127.0.0.1'
|
|
16
|
+
it_behaves_like 'support be_reachable.with matcher', '127.0.0.1'
|
|
17
17
|
|
|
18
18
|
it_behaves_like 'support be_resolvable matcher', 'localhost'
|
|
19
19
|
it_behaves_like 'support be_resolvable.by matcher', 'localhost', 'hosts'
|
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: 37
|
|
5
|
+
prerelease: false
|
|
6
|
+
segments:
|
|
7
|
+
- 0
|
|
8
|
+
- 2
|
|
9
|
+
- 25
|
|
10
|
+
version: 0.2.25
|
|
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-09 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
|
|
@@ -113,6 +112,7 @@ files:
|
|
|
113
112
|
- lib/serverspec/backend/puppet.rb
|
|
114
113
|
- lib/serverspec/backend/ssh.rb
|
|
115
114
|
- lib/serverspec/commands/base.rb
|
|
115
|
+
- lib/serverspec/commands/darwin.rb
|
|
116
116
|
- lib/serverspec/commands/debian.rb
|
|
117
117
|
- lib/serverspec/commands/gentoo.rb
|
|
118
118
|
- lib/serverspec/commands/linux.rb
|
|
@@ -120,6 +120,7 @@ files:
|
|
|
120
120
|
- lib/serverspec/commands/solaris.rb
|
|
121
121
|
- lib/serverspec/filter.rb
|
|
122
122
|
- lib/serverspec/helper.rb
|
|
123
|
+
- lib/serverspec/helper/darwin.rb
|
|
123
124
|
- lib/serverspec/helper/debian.rb
|
|
124
125
|
- lib/serverspec/helper/detect_os.rb
|
|
125
126
|
- lib/serverspec/helper/exec.rb
|
|
@@ -174,6 +175,8 @@ files:
|
|
|
174
175
|
- lib/serverspec/subject.rb
|
|
175
176
|
- lib/serverspec/version.rb
|
|
176
177
|
- serverspec.gemspec
|
|
178
|
+
- spec/darwin/commands_spec.rb
|
|
179
|
+
- spec/darwin/matchers_spec.rb
|
|
177
180
|
- spec/debian/commands_spec.rb
|
|
178
181
|
- spec/debian/matchers_spec.rb
|
|
179
182
|
- spec/gentoo/commands_spec.rb
|
|
@@ -184,32 +187,43 @@ files:
|
|
|
184
187
|
- spec/solaris/matchers_spec.rb
|
|
185
188
|
- spec/spec_helper.rb
|
|
186
189
|
- spec/support/shared_matcher_examples.rb
|
|
190
|
+
has_rdoc: true
|
|
187
191
|
homepage: http://serverspec.org/
|
|
188
|
-
licenses:
|
|
192
|
+
licenses:
|
|
189
193
|
- MIT
|
|
190
194
|
post_install_message:
|
|
191
195
|
rdoc_options: []
|
|
192
|
-
|
|
196
|
+
|
|
197
|
+
require_paths:
|
|
193
198
|
- lib
|
|
194
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
|
199
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
195
200
|
none: false
|
|
196
|
-
requirements:
|
|
197
|
-
- -
|
|
198
|
-
- !ruby/object:Gem::Version
|
|
199
|
-
|
|
200
|
-
|
|
201
|
+
requirements:
|
|
202
|
+
- - ">="
|
|
203
|
+
- !ruby/object:Gem::Version
|
|
204
|
+
hash: 3
|
|
205
|
+
segments:
|
|
206
|
+
- 0
|
|
207
|
+
version: "0"
|
|
208
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
201
209
|
none: false
|
|
202
|
-
requirements:
|
|
203
|
-
- -
|
|
204
|
-
- !ruby/object:Gem::Version
|
|
205
|
-
|
|
210
|
+
requirements:
|
|
211
|
+
- - ">="
|
|
212
|
+
- !ruby/object:Gem::Version
|
|
213
|
+
hash: 3
|
|
214
|
+
segments:
|
|
215
|
+
- 0
|
|
216
|
+
version: "0"
|
|
206
217
|
requirements: []
|
|
218
|
+
|
|
207
219
|
rubyforge_project:
|
|
208
|
-
rubygems_version: 1.
|
|
220
|
+
rubygems_version: 1.3.7
|
|
209
221
|
signing_key:
|
|
210
222
|
specification_version: 3
|
|
211
223
|
summary: RSpec tests for your servers provisioned by Puppet, Chef or anything else
|
|
212
|
-
test_files:
|
|
224
|
+
test_files:
|
|
225
|
+
- spec/darwin/commands_spec.rb
|
|
226
|
+
- spec/darwin/matchers_spec.rb
|
|
213
227
|
- spec/debian/commands_spec.rb
|
|
214
228
|
- spec/debian/matchers_spec.rb
|
|
215
229
|
- spec/gentoo/commands_spec.rb
|