serverspec 0.5.8 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. data/lib/serverspec.rb +37 -33
  2. data/lib/serverspec/helper.rb +0 -3
  3. data/lib/serverspec/matchers.rb +18 -34
  4. data/lib/serverspec/matchers/be_executable.rb +1 -9
  5. data/lib/serverspec/matchers/be_installed.rb +1 -15
  6. data/lib/serverspec/matchers/be_mounted.rb +1 -5
  7. data/lib/serverspec/matchers/be_reachable.rb +1 -5
  8. data/lib/serverspec/matchers/be_readable.rb +1 -9
  9. data/lib/serverspec/matchers/be_resolvable.rb +1 -5
  10. data/lib/serverspec/matchers/be_running.rb +1 -15
  11. data/lib/serverspec/matchers/be_writable.rb +1 -9
  12. data/lib/serverspec/matchers/belong_to_group.rb +1 -5
  13. data/lib/serverspec/matchers/contain.rb +1 -11
  14. data/lib/serverspec/matchers/have_entry.rb +0 -2
  15. data/lib/serverspec/matchers/match_md5checksum.rb +1 -5
  16. data/lib/serverspec/matchers/return_exit_status.rb +1 -6
  17. data/lib/serverspec/matchers/return_stderr.rb +1 -10
  18. data/lib/serverspec/matchers/return_stdout.rb +1 -10
  19. data/lib/serverspec/version.rb +1 -1
  20. data/spec/darwin/commands_spec.rb +1 -1
  21. data/spec/debian/commands_spec.rb +1 -1
  22. data/spec/gentoo/commands_spec.rb +1 -1
  23. data/spec/redhat/commands_spec.rb +1 -1
  24. data/spec/solaris/commands_spec.rb +1 -1
  25. data/spec/solaris/service_spec.rb +1 -1
  26. data/spec/support/shared_commands_examples.rb +2 -2
  27. data/spec/support/shared_cron_examples.rb +4 -4
  28. data/spec/support/shared_group_examples.rb +2 -2
  29. data/spec/support/shared_iptables_examples.rb +2 -2
  30. data/spec/support/shared_package_examples.rb +4 -4
  31. data/spec/support/shared_user_examples.rb +2 -2
  32. metadata +3 -45
  33. data/lib/serverspec/backend/puppet.rb +0 -108
  34. data/lib/serverspec/filter.rb +0 -21
  35. data/lib/serverspec/helper/obsoleted.rb +0 -74
  36. data/lib/serverspec/matchers/be_default_gateway.rb +0 -14
  37. data/lib/serverspec/matchers/be_directory.rb +0 -9
  38. data/lib/serverspec/matchers/be_disabled.rb +0 -9
  39. data/lib/serverspec/matchers/be_enabled.rb +0 -9
  40. data/lib/serverspec/matchers/be_enforcing.rb +0 -10
  41. data/lib/serverspec/matchers/be_file.rb +0 -9
  42. data/lib/serverspec/matchers/be_group.rb +0 -5
  43. data/lib/serverspec/matchers/be_grouped_into.rb +0 -9
  44. data/lib/serverspec/matchers/be_linked_to.rb +0 -9
  45. data/lib/serverspec/matchers/be_listening.rb +0 -10
  46. data/lib/serverspec/matchers/be_mode.rb +0 -9
  47. data/lib/serverspec/matchers/be_owned_by.rb +0 -9
  48. data/lib/serverspec/matchers/be_permissive.rb +0 -9
  49. data/lib/serverspec/matchers/be_user.rb +0 -5
  50. data/lib/serverspec/matchers/be_zfs.rb +0 -9
  51. data/lib/serverspec/matchers/get_stdout.rb +0 -14
  52. data/lib/serverspec/matchers/have_authorized_key.rb +0 -9
  53. data/lib/serverspec/matchers/have_cron_entry.rb +0 -9
  54. data/lib/serverspec/matchers/have_gid.rb +0 -10
  55. data/lib/serverspec/matchers/have_home_directory.rb +0 -10
  56. data/lib/serverspec/matchers/have_ipfilter_rule.rb +0 -5
  57. data/lib/serverspec/matchers/have_ipnat_rule.rb +0 -5
  58. data/lib/serverspec/matchers/have_iptables_rule.rb +0 -11
  59. data/lib/serverspec/matchers/have_login_shell.rb +0 -10
  60. data/lib/serverspec/matchers/have_svcprop.rb +0 -9
  61. data/lib/serverspec/matchers/have_svcprops.rb +0 -5
  62. data/lib/serverspec/matchers/have_uid.rb +0 -10
  63. data/spec/darwin/matchers_spec.rb +0 -89
  64. data/spec/debian/matchers_spec.rb +0 -92
  65. data/spec/gentoo/matchers_spec.rb +0 -93
  66. data/spec/redhat/matchers_spec.rb +0 -98
  67. data/spec/solaris/matchers_spec.rb +0 -92
  68. data/spec/support/shared_matcher_examples.rb +0 -1310
@@ -1,74 +0,0 @@
1
- module Serverspec
2
- module SshHelper
3
- def self.included(mod)
4
- puts
5
- puts "***********************************************************"
6
- puts "Serverspec::SshHelper in spec/spec_helper.rb is deprecated."
7
- puts "Use Serverspec::Helper::Ssh instead."
8
- puts "Or remove spec/spec_helper.rb and run severspec-init again."
9
- puts "***********************************************************"
10
- puts
11
- exit 1
12
- end
13
- end
14
- module DebianHelper
15
- def self.included(mod)
16
- puts
17
- puts "**************************************************************"
18
- puts "Serverspec::DebianHelper in spec/spec_helper.rb is deprecated."
19
- puts "Use Serverspec::Helper::Debian instead."
20
- puts "Or remove spec/spec_helper.rb and run severspec-init again."
21
- puts "**************************************************************"
22
- puts
23
- exit 1
24
- end
25
- end
26
- module GentooHelper
27
- def self.included(mod)
28
- puts
29
- puts "**************************************************************"
30
- puts "Serverspec::GentooHelper in spec/spec_helper.rb is deprecated."
31
- puts "Use Serverspec::Helper::Gentoo instead."
32
- puts "Or remove spec/spec_helper.rb and run severspec-init again."
33
- puts "**************************************************************"
34
- puts
35
- exit 1
36
- end
37
- end
38
- module RedHatHelper
39
- def self.included(mod)
40
- puts
41
- puts "**************************************************************"
42
- puts "Serverspec::RedHatHelper in spec/spec_helper.rb is deprecated."
43
- puts "Use Serverspec::Helper::RedHat instead."
44
- puts "Or remove spec/spec_helper.rb and run severspec-init again."
45
- puts "**************************************************************"
46
- puts
47
- exit 1
48
- end
49
- end
50
- module SolarisHelper
51
- def self.included(mod)
52
- puts
53
- puts "***************************************************************"
54
- puts "Serverspec::SolarisHelper in spec/spec_helper.rb is deprecated."
55
- puts "Use Serverspec::Helper::Solaris instead."
56
- puts "Or remove spec/spec_helper.rb and run severspec-init again."
57
- puts "***************************************************************"
58
- puts
59
- exit 1
60
- end
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
74
- end
@@ -1,14 +0,0 @@
1
- RSpec::Matchers.define :be_default_gateway do
2
- match do |ip_address|
3
- backend.check_routing_table(
4
- {
5
- :destination => 'default',
6
- :gateway => ip_address,
7
- :interface => @interface
8
- }
9
- )
10
- end
11
- chain :with_interface do |interface|
12
- @interface = interface
13
- end
14
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_directory do
2
- match do |actual|
3
- if actual.respond_to?(:directory?)
4
- actual.directory?
5
- else
6
- backend.check_directory(actual)
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_disabled do
2
- match do |subject|
3
- if subject.respond_to?(:disabled?)
4
- subject.disabled?
5
- else
6
- backend.check_selinux('disabled')
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_enabled do
2
- match do |name|
3
- if name.respond_to?(:enabled?)
4
- name.enabled?
5
- else
6
- backend.check_enabled(name)
7
- end
8
- end
9
- end
@@ -1,10 +0,0 @@
1
- RSpec::Matchers.define :be_enforcing do
2
- match do |actual|
3
- if subject.respond_to?(:enforcing?)
4
- subject.enforcing?
5
- else
6
- backend.check_selinux('enforcing')
7
- end
8
- end
9
- end
10
-
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_file do
2
- match do |actual|
3
- if actual.respond_to?(:file?)
4
- actual.file?
5
- else
6
- backend.check_file(actual)
7
- end
8
- end
9
- end
@@ -1,5 +0,0 @@
1
- RSpec::Matchers.define :be_group do
2
- match do |actual|
3
- backend.check_group(actual)
4
- end
5
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_grouped_into do |group|
2
- match do |file|
3
- if file.respond_to?(:grouped_into?)
4
- file.grouped_into?(group)
5
- else
6
- backend.check_grouped(file, group)
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_linked_to do |target|
2
- match do |link|
3
- if link.respond_to?(:linked_to?)
4
- link.linked_to?(target)
5
- else
6
- backend.check_link(link, target)
7
- end
8
- end
9
- end
@@ -1,10 +0,0 @@
1
- RSpec::Matchers.define :be_listening do
2
- match do |actual|
3
- if actual.respond_to?(:listening?)
4
- actual.listening?
5
- else
6
- port = actual.gsub(/port\s+/, '')
7
- backend.check_listening(port)
8
- end
9
- end
10
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_mode do |mode|
2
- match do |file|
3
- if file.respond_to?(:mode?)
4
- file.mode?(mode)
5
- else
6
- backend.check_mode(file, mode)
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_owned_by do |owner|
2
- match do |file|
3
- if file.respond_to?(:owned_by?)
4
- file.owned_by?(owner)
5
- else
6
- backend.check_owner(file, owner)
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_permissive do
2
- match do |actual|
3
- if subject.respond_to?(:permissive?)
4
- subject.permissive?
5
- else
6
- backend.check_selinux('permissive')
7
- end
8
- end
9
- end
@@ -1,5 +0,0 @@
1
- RSpec::Matchers.define :be_user do
2
- match do |actual|
3
- backend.check_user(actual)
4
- end
5
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :be_zfs do
2
- match do |zfs|
3
- backend.check_zfs(zfs, @property)
4
- end
5
-
6
- chain :with do |property|
7
- @property = property
8
- end
9
- end
@@ -1,14 +0,0 @@
1
- RSpec::Matchers.define :get_stdout do |expected|
2
- match do |command|
3
- puts <<'EOF'
4
-
5
- ************************************
6
- "get_stdout" matcher is deprecated.
7
- Use "return_stdout" matcher instead.
8
- ************************************
9
-
10
- EOF
11
- ret = backend.run_command(command)
12
- ret[:stdout] =~ /#{expected}/
13
- end
14
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :have_authorized_key do |key|
2
- match do |user|
3
- if user.respond_to?(:has_authorized_key?)
4
- user.has_authorized_key?(key)
5
- else
6
- backend.check_authorized_key(user, key)
7
- end
8
- end
9
- end
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :have_cron_entry do |entry|
2
- match do |actual|
3
- @user ||= 'root'
4
- backend.check_cron_entry(@user, entry)
5
- end
6
- chain :with_user do |user|
7
- @user = user
8
- end
9
- end
@@ -1,10 +0,0 @@
1
- RSpec::Matchers.define :have_gid do |gid|
2
- match do |group|
3
- if group.respond_to?(:has_gid?)
4
- group.has_gid?(gid)
5
- else
6
- backend.check_gid(group, gid)
7
- end
8
- end
9
- end
10
-
@@ -1,10 +0,0 @@
1
- RSpec::Matchers.define :have_home_directory do |path_to_home|
2
- match do |user|
3
- if user.respond_to?(:has_home_directory?)
4
- user.has_home_directory?(path_to_home)
5
- else
6
- backend.check_home_directory(user, path_to_home)
7
- end
8
- end
9
- end
10
-
@@ -1,5 +0,0 @@
1
- RSpec::Matchers.define :have_ipfilter_rule do |rule|
2
- match do |iptables|
3
- backend.check_ipfilter_rule(rule)
4
- end
5
- end
@@ -1,5 +0,0 @@
1
- RSpec::Matchers.define :have_ipnat_rule do |rule|
2
- match do |ipnat|
3
- backend.check_ipnat_rule(rule)
4
- end
5
- end
@@ -1,11 +0,0 @@
1
- RSpec::Matchers.define :have_iptables_rule do |rule|
2
- match do |iptables|
3
- backend.check_iptables_rule(rule, @table, @chain)
4
- end
5
- chain :with_table do |table|
6
- @table = table
7
- end
8
- chain :with_chain do |chain|
9
- @chain = chain
10
- end
11
- end
@@ -1,10 +0,0 @@
1
- RSpec::Matchers.define :have_login_shell do |path_to_shell|
2
- match do |user|
3
- if user.respond_to?(:has_login_shell?)
4
- user.has_login_shell?(path_to_shell)
5
- else
6
- backend.check_login_shell(user, path_to_shell)
7
- end
8
- end
9
- end
10
-
@@ -1,9 +0,0 @@
1
- RSpec::Matchers.define :have_svcprop do |property|
2
- match do |svc|
3
- backend.check_svcprop(svc, property, @value)
4
- end
5
-
6
- chain :with_value do |value|
7
- @value = value
8
- end
9
- end
@@ -1,5 +0,0 @@
1
- RSpec::Matchers.define :have_svcprops do |property|
2
- match do |svc|
3
- backend.check_svcprops(svc, property)
4
- end
5
- end
@@ -1,10 +0,0 @@
1
- RSpec::Matchers.define :have_uid do |uid|
2
- match do |user|
3
- if user.respond_to?(:has_uid?)
4
- user.has_uid?(uid)
5
- else
6
- backend.check_uid(user, uid)
7
- end
8
- end
9
- end
10
-
@@ -1,89 +0,0 @@
1
- require 'spec_helper'
2
-
3
- include Serverspec::Helper::Darwin
4
-
5
- describe 'Serverspec matchers of Darwin' do
6
- it_behaves_like 'support be_running matcher', 'sshd'
7
- it_behaves_like 'support be_running.under("supervisor") matcher', 'growthforecast'
8
- it_behaves_like 'support be_running.under("not implemented") matcher', 'growthforecast'
9
- it_behaves_like 'support be_listening matcher', 22
10
- it_behaves_like 'support be_file matcher', '/etc/ssh/sshd_config'
11
-
12
- it_behaves_like 'support be_mounted matcher', '/'
13
- it_behaves_like 'support be_mounted.with matcher', '/'
14
- it_behaves_like 'support be_mounted.only_with matcher', '/'
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'
18
-
19
- it_behaves_like 'support be_resolvable matcher', 'localhost'
20
- it_behaves_like 'support be_resolvable.by matcher', 'localhost', 'hosts'
21
- it_behaves_like 'support be_resolvable.by matcher', 'localhost', 'dns'
22
- it_behaves_like 'support be_directory matcher', '/etc/ssh'
23
- it_behaves_like 'support contain matcher', '/etc/ssh/sshd_config', 'This is the sshd server system-wide configuration file'
24
- it_behaves_like 'support contain.from.to matcher', 'Gemfile', 'rspec', /^group :test do/, /^end/
25
- it_behaves_like 'support contain.after matcher', 'Gemfile', 'rspec', /^group :test do/
26
- it_behaves_like 'support contain.before matcher', 'Gemfile', 'rspec', /^end/
27
- it_behaves_like 'support match_md5checksum matcher', '/usr/bin/rsync', '03ba2dcdd50ec3a7a45d3900902a83ce'
28
- it_behaves_like 'support be_user matcher', 'root'
29
- it_behaves_like 'support be_group matcher', 'wheel'
30
-
31
- # Test for case of not registered in the service, but running as process.
32
- it_behaves_like 'support be_running matcher', 'udevd'
33
-
34
- it_behaves_like 'support be_mode matcher', '/etc/passwd', 644
35
-
36
- it_behaves_like 'support be_owned_by matcher', '/etc/passwd', 'root'
37
- it_behaves_like 'support be_grouped_into matcher', '/etc/passwd', 'root'
38
-
39
- it_behaves_like 'support have_cron_entry matcher', 'cron', '* * * * * /usr/bin/foo'
40
- it_behaves_like 'support have_cron_entry.with_user matcher', 'cron', '* * * * * /usr/bin/foo', 'root'
41
-
42
- it_behaves_like 'support be_linked_to matcher', '/etc/pam.d/system-auth', '/etc/pam.d/system-auth-ac'
43
-
44
- it_behaves_like 'support be_installed.by(gem) matcher', 'jekyll'
45
- it_behaves_like 'support be_installed.by(gem).with_version matcher', 'jekyll', '1.0.0'
46
- it_behaves_like 'support be_installed.by(npm) matcher', 'bower'
47
- it_behaves_like 'support be_installed.by(npm).with_version matcher', 'bower', '0.9.2'
48
-
49
- it_behaves_like 'support belong_to_group matcher', 'root', 'root'
50
- it_behaves_like 'support have_gid matcher', 'root', 0
51
- it_behaves_like 'support have_uid matcher', 'root', 0
52
- it_behaves_like 'support have_login_shell matcher', 'root', '/bin/bash'
53
- it_behaves_like 'support have_home_directory matcher', 'root', '/root'
54
- it_behaves_like 'support have_authorized_key matcher', 'root', 'ssh-rsa ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGH foo@bar.local'
55
-
56
- it_behaves_like 'support be_readable matcher', '/dev'
57
- it_behaves_like 'support be_readable_by_owner matcher', '/dev'
58
- it_behaves_like 'support be_readable_by_group matcher', '/dev'
59
- it_behaves_like 'support be_readable_by_others matcher', '/dev'
60
-
61
- it_behaves_like 'support be_writable matcher', '/dev'
62
- it_behaves_like 'support be_writable_by_owner matcher', '/dev'
63
- it_behaves_like 'support be_writable_by_group matcher', '/dev'
64
- it_behaves_like 'support be_writable_by_others matcher', '/dev'
65
-
66
- it_behaves_like 'support be_executable matcher', '/dev'
67
- it_behaves_like 'support be_executable_by_owner matcher', '/dev'
68
- it_behaves_like 'support be_executable_by_group matcher', '/dev'
69
- it_behaves_like 'support be_executable_by_others matcher', '/dev'
70
-
71
- it_behaves_like 'support be_readable_by_specific_user matcher', '/tmp', '_appleevents'
72
- it_behaves_like 'support be_writable_by_specific_user matcher', '/tmp', '_appleevents'
73
- it_behaves_like 'support be_executable_by_specific_user matcher', '/tmp', '_appleevents'
74
-
75
- it_behaves_like 'support return_exit_status matcher', 'ls /tmp', 0
76
-
77
- it_behaves_like 'support return_stdout matcher', 'cat /etc/resolv.conf', 'localhost'
78
- it_behaves_like 'support return_stdout matcher with regexp', 'cat /etc/resolv.conf', /localhost/
79
-
80
- it_behaves_like 'support return_stderr matcher', 'cat /foo', 'cat: /foo: No such file or directory'
81
- it_behaves_like 'support return_stderr matcher with regexp', 'cat /foo', /No such file or directory/
82
-
83
- it_behaves_like 'support linux kernel parameter checking with integer', 'net.ipv4.tcp_syncookies', 1
84
- it_behaves_like 'support linux kernel parameter checking with string', 'kernel.osrelease', '2.6.32-131.0.15.el6.x86_64'
85
- it_behaves_like 'support linux kernel parameter checking with regexp', 'net.ipv4.tcp_wmem', /4096\t16384\t4194304/
86
-
87
- it_behaves_like 'support have_entry matcher'
88
- it_behaves_like 'support be_default_gateway matcher'
89
- end