serverspec 0.2.24 → 0.2.25

Sign up to get free protection for your applications and to get access to all the features.
@@ -156,6 +156,8 @@ module Serverspec
156
156
  'Gentoo'
157
157
  elsif run_command('uname -s')[:stdout] =~ /SunOS/i
158
158
  'Solaris'
159
+ elsif run_command('uname -s')[:stdout] =~ /Darwin/i
160
+ 'Darwin'
159
161
  end
160
162
  end
161
163
 
@@ -0,0 +1,9 @@
1
+ require 'shellwords'
2
+
3
+ module Serverspec
4
+ module Commands
5
+ class Darwin < Base
6
+ class NotImplementedError < Exception; end
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module Serverspec
2
+ module Helper
3
+ module Darwin
4
+ def commands
5
+ Serverspec::Commands::Darwin.new
6
+ end
7
+ end
8
+ end
9
+ end
@@ -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
@@ -10,6 +10,7 @@ require 'serverspec/helper/redhat'
10
10
  require 'serverspec/helper/debian'
11
11
  require 'serverspec/helper/gentoo'
12
12
  require 'serverspec/helper/solaris'
13
+ require 'serverspec/helper/darwin'
13
14
  require 'serverspec/helper/detect_os'
14
15
 
15
16
  # Obsoleted helpers
@@ -1,3 +1,3 @@
1
1
  module Serverspec
2
- VERSION = "0.2.24"
2
+ VERSION = "0.2.25"
3
3
  end
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:11111', '1.1.1.1:ssh'
16
- it_behaves_like 'support be_reachable.with matcher', '127.0.0.1:11111', '1.1.1.1:ssh'
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:11111', '1.1.1.1:ssh'
16
- it_behaves_like 'support be_reachable.with matcher', '127.0.0.1:11111', '1.1.1.1:ssh'
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:11111', '1.1.1.1:ssh'
17
- it_behaves_like 'support be_reachable.with matcher', '127.0.0.1:11111', '1.1.1.1:ssh'
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:11111', '1.1.1.1:ssh'
16
- it_behaves_like 'support be_reachable.with matcher', '127.0.0.1:11111', '1.1.1.1:ssh'
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
- version: 0.2.24
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
- date: 2013-05-07 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
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
- version_requirements: !ruby/object:Gem::Requirement
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
- version: '0'
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
- version_requirements: !ruby/object:Gem::Requirement
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
- version: '0'
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
- version_requirements: !ruby/object:Gem::Requirement
52
+ requirement: &id003 !ruby/object:Gem::Requirement
57
53
  none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- - !ruby/object:Gem::Dependency
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
- version_requirements: !ruby/object:Gem::Requirement
66
+ requirement: &id004 !ruby/object:Gem::Requirement
73
67
  none: false
74
- requirements:
68
+ requirements:
75
69
  - - ~>
76
- - !ruby/object:Gem::Version
77
- version: '1.3'
78
- - !ruby/object:Gem::Dependency
79
- name: rake
80
- requirement: !ruby/object:Gem::Requirement
81
- none: false
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
- version_requirements: !ruby/object:Gem::Requirement
81
+ requirement: &id005 !ruby/object:Gem::Requirement
89
82
  none: false
90
- requirements:
91
- - - ! '>='
92
- - !ruby/object:Gem::Version
93
- version: '0'
94
- description: RSpec tests for your servers provisioned by Puppet, Chef or anything
95
- else
96
- email:
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
- files:
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
- require_paths:
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
- version: '0'
200
- required_rubygems_version: !ruby/object:Gem::Requirement
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
- version: '0'
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.8.25
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