serverspec 0.5.8 → 0.6.0

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.
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