serverspec 2.0.0.beta2 → 2.0.0.beta3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +7 -6
  3. data/Rakefile +2 -27
  4. data/lib/serverspec/helper.rb +0 -1
  5. data/lib/serverspec/helper/os.rb +2 -0
  6. data/lib/serverspec/helper/type.rb +1 -1
  7. data/lib/serverspec/setup.rb +11 -12
  8. data/lib/serverspec/type/base.rb +2 -1
  9. data/lib/serverspec/type/cgroup.rb +1 -1
  10. data/lib/serverspec/type/command.rb +1 -1
  11. data/lib/serverspec/type/cron.rb +1 -1
  12. data/lib/serverspec/type/default_gateway.rb +2 -2
  13. data/lib/serverspec/type/file.rb +22 -22
  14. data/lib/serverspec/type/group.rb +2 -2
  15. data/lib/serverspec/type/host.rb +3 -3
  16. data/lib/serverspec/type/iis_app_pool.rb +2 -2
  17. data/lib/serverspec/type/iis_website.rb +5 -5
  18. data/lib/serverspec/type/interface.rb +2 -2
  19. data/lib/serverspec/type/ipfilter.rb +1 -1
  20. data/lib/serverspec/type/ipnat.rb +1 -1
  21. data/lib/serverspec/type/iptables.rb +1 -1
  22. data/lib/serverspec/type/kernel_module.rb +1 -1
  23. data/lib/serverspec/type/linux_kernel_parameter.rb +1 -1
  24. data/lib/serverspec/type/lxc.rb +2 -2
  25. data/lib/serverspec/type/mail_alias.rb +1 -1
  26. data/lib/serverspec/type/package.rb +4 -4
  27. data/lib/serverspec/type/php_config.rb +1 -1
  28. data/lib/serverspec/type/port.rb +2 -2
  29. data/lib/serverspec/type/process.rb +2 -2
  30. data/lib/serverspec/type/routing_table.rb +1 -1
  31. data/lib/serverspec/type/selinux.rb +3 -3
  32. data/lib/serverspec/type/service.rb +7 -8
  33. data/lib/serverspec/type/user.rb +6 -6
  34. data/lib/serverspec/type/windows_feature.rb +1 -1
  35. data/lib/serverspec/type/windows_hot_fix.rb +1 -1
  36. data/lib/serverspec/type/windows_registry_key.rb +4 -4
  37. data/lib/serverspec/type/windows_scheduled_task.rb +9 -0
  38. data/lib/serverspec/type/yumrepo.rb +2 -2
  39. data/lib/serverspec/type/zfs.rb +2 -2
  40. data/lib/serverspec/version.rb +1 -1
  41. data/spec/spec_helper.rb +2 -33
  42. data/spec/type/cgroup_spec.rb +13 -0
  43. data/spec/type/command_spec.rb +64 -0
  44. data/spec/type/cron_spec.rb +19 -0
  45. data/spec/type/default_gateway_spec.rb +14 -0
  46. data/spec/type/file_spec.rb +392 -0
  47. data/spec/type/group_spec.rb +19 -0
  48. data/spec/type/host_spec.rb +56 -0
  49. data/spec/type/interface_spec.rb +21 -0
  50. data/spec/type/iptables_spec.rb +19 -0
  51. data/spec/type/kernel_module_spec.rb +11 -0
  52. data/spec/type/linux_kernel_parameter_spec.rb +33 -0
  53. data/spec/type/lxc_spec.rb +20 -0
  54. data/spec/type/mail_alias_spec.rb +11 -0
  55. data/spec/type/package_spec.rb +104 -0
  56. data/spec/type/php_config_spec.rb +33 -0
  57. data/spec/type/port_spec.rb +27 -0
  58. data/spec/type/process_spec.rb +35 -0
  59. data/spec/type/routing_table_spec.rb +118 -0
  60. data/spec/type/selinux_spec.rb +15 -0
  61. data/spec/type/service_spec.rb +94 -0
  62. data/spec/type/user_spec.rb +51 -0
  63. data/spec/type/yumrepo_spec.rb +25 -0
  64. data/spec/type/zfs_spec.rb +15 -0
  65. metadata +49 -3
  66. data/lib/serverspec/helper/backend.rb +0 -11
@@ -0,0 +1,15 @@
1
+ require 'spec_helper'
2
+
3
+ include Specinfra::Helper::RedHat
4
+
5
+ describe selinux do
6
+ it { should be_enforcing }
7
+ end
8
+
9
+ describe selinux do
10
+ it { should be_permissive }
11
+ end
12
+
13
+ describe selinux do
14
+ it { should be_disabled }
15
+ end
@@ -0,0 +1,94 @@
1
+ require 'spec_helper'
2
+
3
+ include Specinfra::Helper::RedHat
4
+
5
+ =begin
6
+ describe service('sshd') do
7
+ it { should be_enabled }
8
+ end
9
+
10
+ describe service('invalid-service') do
11
+ it { should_not be_enabled }
12
+ end
13
+
14
+ describe service('sshd') do
15
+ it { should be_enabled.with_level(4) }
16
+ end
17
+
18
+ describe service('invalid-service') do
19
+ it { should_not be_enabled.with_level(4) }
20
+ end
21
+
22
+ describe service('sshd') do
23
+ it { should be_running }
24
+ end
25
+
26
+ describe service('invalid-daemon') do
27
+ it { should_not be_running }
28
+ end
29
+
30
+ describe service('sshd') do
31
+ let(:stdout) { "sshd is stopped\r\n" }
32
+ it { should be_running }
33
+ end
34
+
35
+ describe service('sshd') do
36
+ it { should be_running.under('supervisor') }
37
+ end
38
+
39
+ describe service('invalid-daemon') do
40
+ it { should_not be_running.under('supervisor') }
41
+ end
42
+
43
+ describe service('sshd') do
44
+ it { should be_running.under('upstart') }
45
+ end
46
+
47
+ describe service('invalid-daemon') do
48
+ it { should_not be_running.under('upstart') }
49
+ end
50
+
51
+ describe service('sshd') do
52
+ it {
53
+ expect {
54
+ should be_running.under('not implemented')
55
+ }.to raise_error(ArgumentError, %r/\A`be_running` matcher doesn\'t support/)
56
+ }
57
+ end
58
+
59
+ describe service('sshd') do
60
+ let(:stdout) { "Process 'sshd'\r\n status running\r\n monitoring status monitored" }
61
+ it { should be_monitored_by('monit') }
62
+ end
63
+
64
+ describe service('sshd') do
65
+ let(:stdout) { "Process 'sshd'\r\n status not monitored\r\n monitoring status not monitored" }
66
+ it { should_not be_monitored_by('monit') }
67
+ end
68
+
69
+
70
+ =end
71
+
72
+ describe service('invalid-daemon') do
73
+ it { should_not be_monitored_by('monit') }
74
+ end
75
+
76
+ =begin
77
+
78
+ describe service('unicorn') do
79
+ it { should be_monitored_by('god') }
80
+ end
81
+
82
+ describe service('invalid-daemon') do
83
+ it { should_not be_monitored_by('god') }
84
+ end
85
+
86
+ describe service('sshd') do
87
+ it {
88
+ expect {
89
+ should be_monitored_by('not implemented')
90
+ }.to raise_error(ArgumentError, %r/\A`be_monitored_by` matcher doesn\'t support/)
91
+ }
92
+ end
93
+
94
+ =end
@@ -0,0 +1,51 @@
1
+ require 'spec_helper'
2
+
3
+ include Specinfra::Helper::RedHat
4
+
5
+ describe user('root') do
6
+ it { should exist }
7
+ end
8
+
9
+ describe user('invalid-user') do
10
+ it { should_not exist }
11
+ end
12
+
13
+ describe user('root') do
14
+ it { should belong_to_group 'root' }
15
+ end
16
+
17
+ describe user('root') do
18
+ it { should_not belong_to_group 'invalid-group' }
19
+ end
20
+
21
+ describe user('root') do
22
+ it { should have_uid 0 }
23
+ end
24
+
25
+ describe user('root') do
26
+ it { should_not have_uid 'invalid-uid' }
27
+ end
28
+
29
+ describe user('root') do
30
+ it { should have_login_shell '/bin/bash' }
31
+ end
32
+
33
+ describe user('root') do
34
+ it { should_not have_login_shell 'invalid-login-shell' }
35
+ end
36
+
37
+ describe user('root') do
38
+ it { should have_home_directory '/root' }
39
+ end
40
+
41
+ describe user('root') do
42
+ it { should_not have_home_directory 'invalid-home-directory' }
43
+ end
44
+
45
+ describe user('root') do
46
+ it { should have_authorized_key 'ssh-rsa ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGH foo@bar.local' }
47
+ end
48
+
49
+ describe user('root') do
50
+ it { should_not have_authorized_key 'invalid-key' }
51
+ end
@@ -0,0 +1,25 @@
1
+ require 'spec_helper'
2
+
3
+ include Specinfra::Helper::RedHat
4
+
5
+ describe 'Serverspec yumrepo matchers of Red Hat family' do
6
+ describe 'exist' do
7
+ describe yumrepo('epel') do
8
+ it { should exist }
9
+ end
10
+
11
+ describe yumrepo('invalid-repository') do
12
+ it { should_not exist }
13
+ end
14
+ end
15
+
16
+ describe 'be_enabled' do
17
+ describe yumrepo('epel') do
18
+ it { should be_enabled }
19
+ end
20
+
21
+ describe yumrepo('invalid-repository') do
22
+ it { should_not be_enabled }
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,15 @@
1
+ require 'spec_helper'
2
+
3
+ include Specinfra::Helper::RedHat
4
+
5
+ describe zfs('rpool') do
6
+ it { should exist }
7
+ end
8
+
9
+ describe zfs('rpool') do
10
+ it { should have_property 'mountpoint' => '/rpool' }
11
+ end
12
+
13
+ describe zfs('rpool') do
14
+ it { should have_property 'mountpoint' => '/rpool', 'compression' => 'off' }
15
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: serverspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.beta2
4
+ version: 2.0.0.beta3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gosuke Miyashita
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-06 00:00:00.000000000 Z
11
+ date: 2014-05-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-ssh
@@ -143,7 +143,6 @@ files:
143
143
  - lib/serverspec.rb
144
144
  - lib/serverspec/commands/base.rb
145
145
  - lib/serverspec/helper.rb
146
- - lib/serverspec/helper/backend.rb
147
146
  - lib/serverspec/helper/os.rb
148
147
  - lib/serverspec/helper/properties.rb
149
148
  - lib/serverspec/helper/type.rb
@@ -198,6 +197,7 @@ files:
198
197
  - lib/serverspec/type/windows_feature.rb
199
198
  - lib/serverspec/type/windows_hot_fix.rb
200
199
  - lib/serverspec/type/windows_registry_key.rb
200
+ - lib/serverspec/type/windows_scheduled_task.rb
201
201
  - lib/serverspec/type/yumrepo.rb
202
202
  - lib/serverspec/type/zfs.rb
203
203
  - lib/serverspec/version.rb
@@ -205,6 +205,29 @@ files:
205
205
  - spec/helper/properties_spec.rb
206
206
  - spec/helper/type_spec.rb
207
207
  - spec/spec_helper.rb
208
+ - spec/type/cgroup_spec.rb
209
+ - spec/type/command_spec.rb
210
+ - spec/type/cron_spec.rb
211
+ - spec/type/default_gateway_spec.rb
212
+ - spec/type/file_spec.rb
213
+ - spec/type/group_spec.rb
214
+ - spec/type/host_spec.rb
215
+ - spec/type/interface_spec.rb
216
+ - spec/type/iptables_spec.rb
217
+ - spec/type/kernel_module_spec.rb
218
+ - spec/type/linux_kernel_parameter_spec.rb
219
+ - spec/type/lxc_spec.rb
220
+ - spec/type/mail_alias_spec.rb
221
+ - spec/type/package_spec.rb
222
+ - spec/type/php_config_spec.rb
223
+ - spec/type/port_spec.rb
224
+ - spec/type/process_spec.rb
225
+ - spec/type/routing_table_spec.rb
226
+ - spec/type/selinux_spec.rb
227
+ - spec/type/service_spec.rb
228
+ - spec/type/user_spec.rb
229
+ - spec/type/yumrepo_spec.rb
230
+ - spec/type/zfs_spec.rb
208
231
  - spec/unit/command_spec.rb
209
232
  - wercker.yml
210
233
  homepage: http://serverspec.org/
@@ -235,4 +258,27 @@ test_files:
235
258
  - spec/helper/properties_spec.rb
236
259
  - spec/helper/type_spec.rb
237
260
  - spec/spec_helper.rb
261
+ - spec/type/cgroup_spec.rb
262
+ - spec/type/command_spec.rb
263
+ - spec/type/cron_spec.rb
264
+ - spec/type/default_gateway_spec.rb
265
+ - spec/type/file_spec.rb
266
+ - spec/type/group_spec.rb
267
+ - spec/type/host_spec.rb
268
+ - spec/type/interface_spec.rb
269
+ - spec/type/iptables_spec.rb
270
+ - spec/type/kernel_module_spec.rb
271
+ - spec/type/linux_kernel_parameter_spec.rb
272
+ - spec/type/lxc_spec.rb
273
+ - spec/type/mail_alias_spec.rb
274
+ - spec/type/package_spec.rb
275
+ - spec/type/php_config_spec.rb
276
+ - spec/type/port_spec.rb
277
+ - spec/type/process_spec.rb
278
+ - spec/type/routing_table_spec.rb
279
+ - spec/type/selinux_spec.rb
280
+ - spec/type/service_spec.rb
281
+ - spec/type/user_spec.rb
282
+ - spec/type/yumrepo_spec.rb
283
+ - spec/type/zfs_spec.rb
238
284
  - spec/unit/command_spec.rb
@@ -1,11 +0,0 @@
1
- module Serverspec
2
- module Helper
3
- ['Exec', 'Ssh', 'Cmd', 'WinRM'].each do |backend|
4
- eval <<-EOF
5
- module #{backend}
6
- include self.class.const_get('Specinfra').const_get('Helper').const_get('#{backend}')
7
- end
8
- EOF
9
- end
10
- end
11
- end