serverspec 0.0.17 → 0.0.18

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/.travis.yml ADDED
@@ -0,0 +1,16 @@
1
+ language: ruby
2
+
3
+ rvm:
4
+ - 1.9.3
5
+ - 2.0.0
6
+
7
+ before_install:
8
+ - gem update bundler
9
+
10
+ script:
11
+ - bundle exec rake spec
12
+
13
+ matrix:
14
+ allow_failures:
15
+ - rvm: 2.0.0
16
+
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
- # Serverspec
1
+ # Serverspec [![BuildStatus](https://secure.travis-ci.org/mizzy/serverspec.png)](http://travis-ci.org/mizzy/serverspec) [![Coverage Status](https://coveralls.io/repos/mizzy/serverspec/badge.png?branch=master)](https://coveralls.io/r/mizzy/serverspec)
2
2
 
3
- RSpec tests for your servers provisioned by Puppet, Chef and so on
3
+ RSpec tests for your servers provisioned by Puppet, Chef or anything else
4
4
 
5
5
  ----
6
6
 
@@ -24,36 +24,49 @@ Or install it yourself as:
24
24
 
25
25
  ```
26
26
  $ serverspec-init
27
+ Input target host name: www.example.jp
28
+
29
+ Select OS Type of target host:
30
+
31
+ 1) Red Hat
32
+ 2) Debian
33
+ 3) Gentoo
34
+ 4) Solaris
35
+ 5) None
36
+
37
+ Select container number: 1
38
+
27
39
  + spec/
28
40
  + spec/www.example.jp/
29
41
  + spec/www.example.jp/httpd_spec.rb
30
42
  + spec/spec_helper.rb
31
43
  + Rakefile
32
44
  ```
45
+
33
46
  spec/www.example.jp/httpd_spec.rb is a sample spec file and its content is like this.
34
47
 
35
48
  ```ruby
36
49
  require 'spec_helper'
37
50
 
38
- describe 'httpd', :os => :redhat do
51
+ describe 'httpd' do
39
52
  it { should be_installed }
40
53
  it { should be_enabled }
41
54
  it { should be_running }
42
55
  end
43
56
 
44
- describe 'port 80', :os => :redhat do
57
+ describe 'port 80' do
45
58
  it { should be_listening }
46
59
  end
47
60
 
48
- describe '/etc/httpd/conf/httpd.conf', :os => :redhat do
61
+ describe '/etc/httpd/conf/httpd.conf' do
49
62
  it { should be_file }
50
63
  it { should contain "ServerName www.example.jp" }
51
64
  end
52
65
  ```
53
66
 
54
- You can write spec for testing provisioned servers like this.
67
+ You can write spec for testing servers like this.
55
68
 
56
- You should create ~/.ssh/config like this before running tests.
69
+ You should create ~/.ssh/config like this before running tests because serverspec tests servers through SSH access.
57
70
 
58
71
  ```
59
72
  Host *.example.jp
@@ -79,7 +92,52 @@ Finished in 0.99715 seconds
79
92
 
80
93
  Serverspec is supporting Red Hat based OS, Debian based OS, Gentoo and Solaris now.
81
94
 
82
- If your target host's OS is Debian, you can write the spec like this.
95
+ If your target host's OS is Debian, you should include Serverspec::DebianHelper like this.
96
+
97
+ ```ruby
98
+ require 'serverspec'
99
+ require 'pathname'
100
+ require 'net/ssh'
101
+
102
+ RSpec.configure do |c|
103
+ # Include OS helper
104
+ c.include(Serverspec::DebianHelper)
105
+ c.before do
106
+ host = File.basename(Pathname.new(example.metadata[:location]).dirname)
107
+ if c.host != host
108
+ c.ssh.close if c.ssh
109
+ c.host = host
110
+ options = Net::SSH::Config.for(c.host)
111
+ user = options[:user] || Etc.getlogin
112
+ c.ssh = Net::SSH.start(c.host, user, options)
113
+ end
114
+ end
115
+ end
116
+ ```
117
+
118
+ And you can omit OS type from spec like this.
119
+
120
+ ```ruby
121
+ require 'spec_helper'
122
+
123
+ describe 'httpd' do
124
+ it { should be_installed }
125
+ it { should be_enabled }
126
+ it { should be_running }
127
+ end
128
+
129
+ describe 'port 80' do
130
+ it { should be_listening }
131
+ end
132
+
133
+ describe '/etc/httpd/conf/httpd.conf' do
134
+ it { should be_file }
135
+ it { should contain "ServerName www.example.jp" }
136
+ end
137
+ ```
138
+
139
+ You can change the target host's OS per spec like this.
140
+
83
141
 
84
142
  ```ruby
85
143
  require 'spec_helper'
@@ -136,38 +194,6 @@ end
136
194
 
137
195
  Or modify spec/spec_helper.rb generated by serverspec-init command like this
138
196
 
139
- ```ruby
140
- require 'serverspec'
141
- require 'pathname'
142
-
143
- RSpec.configure do |c|
144
- c.include(Serverspec::DebianHelper)
145
- c.before do
146
- c.host = File.basename(Pathname.new(example.metadata[:location]).dirname)
147
- end
148
- end
149
- ```
150
-
151
- And write the spec like this.
152
-
153
- ```ruby
154
- require 'spec_helper'
155
-
156
- describe 'httpd' do
157
- it { should be_installed }
158
- it { should be_enabled }
159
- it { should be_running }
160
- end
161
-
162
- describe 'port 80' do
163
- it { should be_listening }
164
- end
165
-
166
- describe '/etc/httpd/conf/httpd.conf' do
167
- it { should be_file }
168
- it { should contain "ServerName www.example.jp" }
169
- end
170
- ```
171
197
 
172
198
  Choose any style you like.
173
199
 
@@ -1,7 +1,7 @@
1
1
  require 'etc'
2
2
 
3
3
  module Serverspec
4
- module Helper
4
+ module SshHelper
5
5
  def ssh_exec(cmd, opt={})
6
6
  ssh_exec!("sudo #{cmd}")
7
7
  end
@@ -3,42 +3,64 @@ require 'fileutils'
3
3
  module Serverspec
4
4
  class Setup
5
5
  def self.run
6
- %w( spec spec/www.example.jp ).each { |dir| safe_mkdir(dir) }
6
+ print "Input target host name: "
7
+ @hostname = gets.chomp
8
+
9
+ prompt = <<-EOF
10
+
11
+ Select OS Type of target host:
12
+
13
+ 1) Red Hat
14
+ 2) Debian
15
+ 3) Gentoo
16
+ 4) Solaris
17
+ 5) None
18
+
19
+ Select container number:
20
+ EOF
21
+
22
+ print prompt.chop
23
+ num = gets.to_i - 1
24
+ puts
25
+
26
+ @os_type = [ 'RedHat', 'Debian', 'Gentoo', 'Solaris', nil ][num]
27
+ [ 'spec', "spec/#{@hostname}" ].each { |dir| safe_mkdir(dir) }
7
28
  safe_create_spec
8
29
  safe_create_spec_helper
9
30
  safe_create_rakefile
10
31
  end
11
32
 
12
33
  def self.safe_create_spec
13
- content = <<-EOF
34
+
35
+ content = <<-EOF
14
36
  require 'spec_helper'
15
37
 
16
- describe 'httpd', :os => :redhat do
38
+ describe 'httpd' do
17
39
  it { should be_installed }
18
40
  it { should be_enabled }
19
41
  it { should be_running }
20
42
  end
21
43
 
22
- describe 'port 80', :os => :redhat do
44
+ describe 'port 80' do
23
45
  it { should be_listening }
24
46
  end
25
47
 
26
- describe '/etc/httpd/conf/httpd.conf', :os => :redhat do
48
+ describe '/etc/httpd/conf/httpd.conf' do
27
49
  it { should be_file }
28
- it { should contain "ServerName www.example.jp" }
50
+ it { should contain "ServerName #{@hostname}" }
29
51
  end
30
52
  EOF
31
53
 
32
- if File.exists? 'spec/www.example.jp/httpd_spec.rb'
33
- old_content = File.read('spec/www.example.jp/httpd_spec.rb')
54
+ if File.exists? "spec/#{@hostname}/httpd_spec.rb"
55
+ old_content = File.read("spec/#{@hostname}/httpd_spec.rb")
34
56
  if old_content != content
35
- $stderr.puts "!! spec/www.example.jp/httpd_spec.rb already exists and differs from template"
57
+ $stderr.puts "!! spec/#{@hostname}/httpd_spec.rb already exists and differs from template"
36
58
  end
37
59
  else
38
- File.open('spec/www.example.jp/httpd_spec.rb', 'w') do |f|
60
+ File.open("spec/#{@hostname}/httpd_spec.rb", 'w') do |f|
39
61
  f.puts content
40
62
  end
41
- puts ' + spec/www.example.jp/httpd_spec.rb'
63
+ puts " + spec/#{@hostname}/httpd_spec.rb"
42
64
  end
43
65
  end
44
66
 
@@ -60,6 +82,7 @@ require 'pathname'
60
82
  require 'net/ssh'
61
83
 
62
84
  RSpec.configure do |c|
85
+ ### include os helper ###
63
86
  c.before do
64
87
  host = File.basename(Pathname.new(example.metadata[:location]).dirname)
65
88
  if c.host != host
@@ -72,6 +95,11 @@ RSpec.configure do |c|
72
95
  end
73
96
  end
74
97
  EOF
98
+
99
+ if not @os_type.nil?
100
+ content.gsub!(/### include os helper ###/, "c.include(Serverspec::#{@os_type}Helper)")
101
+ end
102
+
75
103
  if File.exists? 'spec/spec_helper.rb'
76
104
  old_content = File.read('spec/spec_helper.rb')
77
105
  if old_content != content
@@ -1,3 +1,3 @@
1
1
  module Serverspec
2
- VERSION = "0.0.17"
2
+ VERSION = "0.0.18"
3
3
  end
data/lib/serverspec.rb CHANGED
@@ -11,7 +11,7 @@ require 'serverspec/commands/gentoo'
11
11
  require 'serverspec/commands/solaris'
12
12
 
13
13
  RSpec.configure do |c|
14
- c.include(Serverspec::Helper)
14
+ c.include(Serverspec::SshHelper)
15
15
  c.include(Serverspec::RedHatHelper, :os => :redhat)
16
16
  c.include(Serverspec::DebianHelper, :os => :debian)
17
17
  c.include(Serverspec::GentooHelper, :os => :gentoo)
@@ -1,8 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe 'Serverspec matchers of Debian family', :os => :debian do
4
- let(:test_server_host) { 'serverspec-debian-host' }
5
-
6
4
  it_behaves_like 'support be_enabled matcher', 'rc.local'
7
5
  it_behaves_like 'support be_installed matcher', 'openssh-server'
8
6
  it_behaves_like 'support be_running matcher', 'ssh'
@@ -1,8 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe 'Serverspec matchers of Gentoo family', :os => :gentoo do
4
- let(:test_server_host) { 'serverspec-gentoo-host' }
5
-
6
4
  it_behaves_like 'support be_enabled matcher', 'sshd'
7
5
  it_behaves_like 'support be_installed matcher', 'openssh'
8
6
  it_behaves_like 'support be_running matcher', 'sshd'
@@ -0,0 +1,7 @@
1
+ require 'spec_helper'
2
+
3
+ include Serverspec::RedHatHelper
4
+
5
+ describe commands.check_enabled('httpd') do
6
+ it { should eq 'chkconfig --list httpd | grep 3:on' }
7
+ end
@@ -1,8 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe 'Serverspec matchers of Red Hat family', :os => :redhat do
4
- let(:test_server_host) { 'serverspec-redhat-host' }
5
-
6
4
  it_behaves_like 'support be_enabled matcher', 'sshd'
7
5
  it_behaves_like 'support be_installed matcher', 'openssh'
8
6
  it_behaves_like 'support be_running matcher', 'sshd'
@@ -24,8 +22,8 @@ describe 'Serverspec matchers of Red Hat family', :os => :redhat do
24
22
  it_behaves_like 'support have_cron_entry matcher', 'cron', '* * * * * /usr/bin/foo'
25
23
  it_behaves_like 'support have_cron_entry.with_user matcher', 'cron', '* * * * * /usr/bin/foo', 'root'
26
24
 
27
- it behaves_like 'support be_linked_to matcher', '/etc/pam.d/system-auth', '/etc/pam.d/system-auth-ac'
25
+ it_behaves_like 'support be_linked_to matcher', '/etc/pam.d/system-auth', '/etc/pam.d/system-auth-ac'
28
26
 
29
- it behaves_like 'support belong_to_group matcher', 'root', 'root'
27
+ it_behaves_like 'support belong_to_group matcher', 'root', 'root'
30
28
 
31
29
  end
@@ -1,8 +1,6 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe 'Serverspec matchers of Solaris family', :os => :solaris do
4
- let(:test_server_host) { 'serverspec-solaris-host' }
5
-
6
4
  it_behaves_like 'support be_enabled matcher', 'svc:/network/ssh:default'
7
5
  it_behaves_like 'support be_installed matcher', 'service/network/ssh'
8
6
  it_behaves_like 'support be_running matcher', 'svc:/network/ssh:default'
data/spec/spec_helper.rb CHANGED
@@ -5,8 +5,14 @@ PROJECT_ROOT = (Pathname.new(File.dirname(__FILE__)) + '..').expand_path
5
5
 
6
6
  Dir[PROJECT_ROOT.join("spec/support/**/*.rb")].each { |file| require(file) }
7
7
 
8
- RSpec.configure do |c|
9
- c.before do
10
- c.host = test_server_host
8
+ module Serverspec
9
+ module SshHelper
10
+ def ssh_exec(cmd)
11
+ if cmd =~ /invalid/
12
+ { :stdout => nil, :stderr => nil, :exit_code => 1, :exit_signal => nil }
13
+ else
14
+ { :stdout => nil, :stderr => nil, :exit_code => 0, :exit_signal => nil }
15
+ end
16
+ end
11
17
  end
12
18
  end
@@ -5,7 +5,7 @@ shared_examples_for 'support be_enabled matcher' do |valid_service|
5
5
  it { should be_enabled }
6
6
  end
7
7
 
8
- describe 'this-is-dummy-service' do
8
+ describe 'this-is-invalid-service' do
9
9
  it { should_not be_enabled }
10
10
  end
11
11
  end
@@ -17,7 +17,7 @@ shared_examples_for 'support be_installed matcher' do |valid_package|
17
17
  it { should be_installed }
18
18
  end
19
19
 
20
- describe 'this-is-dummy-package' do
20
+ describe 'this-is-invalid-package' do
21
21
  it { should_not be_installed }
22
22
  end
23
23
  end
@@ -29,7 +29,7 @@ shared_examples_for 'support be_running matcher' do |valid_service|
29
29
  it { should be_running }
30
30
  end
31
31
 
32
- describe 'this-is-dummy-daemon' do
32
+ describe 'this-is-invalid-daemon' do
33
33
  it { should_not be_running }
34
34
  end
35
35
  end
@@ -41,7 +41,7 @@ shared_examples_for 'support be_listening matcher' do |valid_port|
41
41
  it { should be_listening }
42
42
  end
43
43
 
44
- describe 'port 9999' do
44
+ describe 'port invalid' do
45
45
  it { should_not be_listening }
46
46
  end
47
47
  end
@@ -53,7 +53,7 @@ shared_examples_for 'support be_file matcher' do |valid_file|
53
53
  it { should be_file }
54
54
  end
55
55
 
56
- describe '/etc/thid_is_dummy_file' do
56
+ describe '/etc/thid_is_invalid_file' do
57
57
  it { should_not be_file }
58
58
  end
59
59
  end
@@ -65,7 +65,7 @@ shared_examples_for 'support be_directory matcher' do |valid_directory|
65
65
  it { should be_directory }
66
66
  end
67
67
 
68
- describe '/etc/thid_is_dummy_directory' do
68
+ describe '/etc/thid_is_invalid_directory' do
69
69
  it { should_not be_directory }
70
70
  end
71
71
  end
@@ -78,7 +78,7 @@ shared_examples_for 'support contain matcher' do |valid_file, pattern|
78
78
  end
79
79
 
80
80
  describe '/etc/ssh/sshd_config' do
81
- it { should_not contain 'This is duymmy text!!' }
81
+ it { should_not contain 'This is invalid text!!' }
82
82
  end
83
83
  end
84
84
  end
@@ -89,7 +89,7 @@ shared_examples_for 'support be_user matcher' do |valid_user|
89
89
  it { should be_user }
90
90
  end
91
91
 
92
- describe 'i_am_dummy_user' do
92
+ describe 'i_am_invalid_user' do
93
93
  it { should_not be_user }
94
94
  end
95
95
  end
@@ -101,7 +101,7 @@ shared_examples_for 'support be_group matcher' do |valid_group|
101
101
  it { should be_group }
102
102
  end
103
103
 
104
- describe 'we_are_dummy_group' do
104
+ describe 'we_are_invalid_group' do
105
105
  it { should_not be_group }
106
106
  end
107
107
  end
@@ -114,7 +114,7 @@ shared_examples_for 'support be_mode matcher' do |valid_file, mode|
114
114
  end
115
115
 
116
116
  describe '/etc/passwd' do
117
- it { should_not be_mode 000 }
117
+ it { should_not be_mode 'invalid' }
118
118
  end
119
119
  end
120
120
  end
@@ -126,7 +126,7 @@ shared_examples_for 'support be_owned_by matcher' do |valid_file, owner|
126
126
  end
127
127
 
128
128
  describe '/etc/passwd' do
129
- it { should_not be_owned_by 'daemon' }
129
+ it { should_not be_owned_by 'invalid-owner' }
130
130
  end
131
131
  end
132
132
  end
@@ -138,7 +138,7 @@ shared_examples_for 'support be_grouped_into matcher' do |valid_file, group|
138
138
  end
139
139
 
140
140
  describe '/etc/passwd' do
141
- it { should_not be_grouped_into 'daemon' }
141
+ it { should_not be_grouped_into 'invalid-group' }
142
142
  end
143
143
  end
144
144
  end
@@ -150,7 +150,7 @@ shared_examples_for 'support have_cron_entry matcher' do |title, entry|
150
150
  end
151
151
 
152
152
  describe '/etc/passwd' do
153
- it { should_not have_cron_entry 'dummy entry' }
153
+ it { should_not have_cron_entry 'invalid entry' }
154
154
  end
155
155
  end
156
156
  end
@@ -162,7 +162,7 @@ shared_examples_for 'support have_cron_entry.with_user matcher' do |title, entry
162
162
  end
163
163
 
164
164
  describe '/etc/passwd' do
165
- it { should_not have_cron_entry('dummy entry').with_user('dummyuser') }
165
+ it { should_not have_cron_entry('dummy entry').with_user('invaliduser') }
166
166
  end
167
167
  end
168
168
  end
@@ -174,7 +174,7 @@ shared_examples_for 'support be_linked_to matcher' do |file, target|
174
174
  end
175
175
 
176
176
  describe 'this-is-dummy-link' do
177
- it { should_not be_linked_to 'dummy target' }
177
+ it { should_not be_linked_to '/invalid/target' }
178
178
  end
179
179
  end
180
180
  end
@@ -185,7 +185,7 @@ shared_examples_for 'support be_installed_by_gem matcher' do |name|
185
185
  it { should be_installed_by_gem }
186
186
  end
187
187
 
188
- describe 'dummygem' do
188
+ describe 'invalid-gem' do
189
189
  it { should_not be_installed_by_gem }
190
190
  end
191
191
  end
@@ -198,19 +198,19 @@ shared_examples_for 'support be_installed_by_gem.with_version matcher' do |name,
198
198
  end
199
199
 
200
200
  describe name do
201
- it { should_not be_installed_by_gem.with_version('dummyversion') }
201
+ it { should_not be_installed_by_gem.with_version('invalid-version') }
202
202
  end
203
203
  end
204
204
  end
205
205
 
206
- shared_examples_for 'support belong_to_group matcher' do |name, group|
206
+ shared_examples_for 'support belong_to_group matcher' do |user, group|
207
207
  describe 'belong_to_group' do
208
208
  describe user do
209
209
  it { should belong_to_group group }
210
210
  end
211
211
 
212
212
  describe 'dummyuser' do
213
- it { should_not belong_to_group 'dummygroup' }
213
+ it { should_not belong_to_group 'invalid-group' }
214
214
  end
215
215
  end
216
216
  end
metadata CHANGED
@@ -1,91 +1,90 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: serverspec
3
- version: !ruby/object:Gem::Version
4
- hash: 61
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 0
9
- - 17
10
- version: 0.0.17
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.18
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Gosuke Miyashita
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2013-03-29 00:00:00 +09:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2013-03-30 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: net-ssh
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 0
32
- version: "0"
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
33
22
  type: :runtime
34
- version_requirements: *id001
35
- - !ruby/object:Gem::Dependency
36
- name: bundler
37
23
  prerelease: false
38
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
39
25
  none: false
40
- requirements:
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: bundler
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
41
35
  - - ~>
42
- - !ruby/object:Gem::Version
43
- hash: 9
44
- segments:
45
- - 1
46
- - 3
47
- version: "1.3"
36
+ - !ruby/object:Gem::Version
37
+ version: '1.3'
48
38
  type: :development
49
- version_requirements: *id002
50
- - !ruby/object:Gem::Dependency
51
- name: rspec
52
39
  prerelease: false
53
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '1.3'
46
+ - !ruby/object:Gem::Dependency
47
+ name: rspec
48
+ requirement: !ruby/object:Gem::Requirement
54
49
  none: false
55
- requirements:
56
- - - ">="
57
- - !ruby/object:Gem::Version
58
- hash: 3
59
- segments:
60
- - 0
61
- version: "0"
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
62
54
  type: :development
63
- version_requirements: *id003
64
- - !ruby/object:Gem::Dependency
65
- name: rake
66
55
  prerelease: false
67
- requirement: &id004 !ruby/object:Gem::Requirement
56
+ version_requirements: !ruby/object:Gem::Requirement
68
57
  none: false
69
- requirements:
70
- - - ">="
71
- - !ruby/object:Gem::Version
72
- hash: 3
73
- segments:
74
- - 0
75
- version: "0"
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: rake
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
76
70
  type: :development
77
- version_requirements: *id004
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
78
  description: RSpec tests for your provisioned servers
79
- email:
79
+ email:
80
80
  - gosukenator@gmail.com
81
- executables:
81
+ executables:
82
82
  - serverspec-init
83
83
  extensions: []
84
-
85
84
  extra_rdoc_files: []
86
-
87
- files:
85
+ files:
88
86
  - .gitignore
87
+ - .travis.yml
89
88
  - Gemfile
90
89
  - LICENSE.txt
91
90
  - README.md
@@ -120,47 +119,40 @@ files:
120
119
  - serverspec.gemspec
121
120
  - spec/debian/matchers_spec.rb
122
121
  - spec/gentoo/matchers_spec.rb
122
+ - spec/redhat/commands_spec.rb
123
123
  - spec/redhat/matchers_spec.rb
124
124
  - spec/solaris/matchers_spec.rb
125
125
  - spec/spec_helper.rb
126
126
  - spec/support/shared_matcher_examples.rb
127
- has_rdoc: true
128
127
  homepage: https://github.com/mizzy/serverspec
129
- licenses:
128
+ licenses:
130
129
  - MIT
131
130
  post_install_message:
132
131
  rdoc_options: []
133
-
134
- require_paths:
132
+ require_paths:
135
133
  - lib
136
- required_ruby_version: !ruby/object:Gem::Requirement
134
+ required_ruby_version: !ruby/object:Gem::Requirement
137
135
  none: false
138
- requirements:
139
- - - ">="
140
- - !ruby/object:Gem::Version
141
- hash: 3
142
- segments:
143
- - 0
144
- version: "0"
145
- required_rubygems_version: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ! '>='
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
140
+ required_rubygems_version: !ruby/object:Gem::Requirement
146
141
  none: false
147
- requirements:
148
- - - ">="
149
- - !ruby/object:Gem::Version
150
- hash: 3
151
- segments:
152
- - 0
153
- version: "0"
142
+ requirements:
143
+ - - ! '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
154
146
  requirements: []
155
-
156
147
  rubyforge_project:
157
- rubygems_version: 1.3.7
148
+ rubygems_version: 1.8.25
158
149
  signing_key:
159
150
  specification_version: 3
160
151
  summary: RSpec tests for your provisioned servers
161
- test_files:
152
+ test_files:
162
153
  - spec/debian/matchers_spec.rb
163
154
  - spec/gentoo/matchers_spec.rb
155
+ - spec/redhat/commands_spec.rb
164
156
  - spec/redhat/matchers_spec.rb
165
157
  - spec/solaris/matchers_spec.rb
166
158
  - spec/spec_helper.rb