serverspec 0.10.5 → 0.10.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dcb9f644fd856ee0aab06fe035f9bed7af778f61
4
- data.tar.gz: 608dc6ee8cc695b3fb48f3426303245c51c63f98
3
+ metadata.gz: 22e4b599ab3a4fc8ff81faf1e55f41712e109631
4
+ data.tar.gz: 7dd6658d68a7ab903add025a20225b151985e9c6
5
5
  SHA512:
6
- metadata.gz: cf6c417482127ec3ceca5363de2488829644212f028a67e4601b3c196e72952c65449774d09dc0bf3d7a6b212f564c847d1ca53eafabda8f0549b8e72aeba1f5
7
- data.tar.gz: 520fa26e75439d84da59aa679db5e42bfa8184dcabad1a745dc3889bcac9f14400955390ffaa61c81a4be4ad6044b8e067e354dc38bf9b9f64033a36cfe3dda2
6
+ metadata.gz: e929ccd2fd728a64bfd5e612319ec8d17c247f8dd7d1bc08bb590a70c8afc2c47c9deb69a0c8d101e8d98d7af004bb843c6d66e063a3817f9aa3188e4d334556
7
+ data.tar.gz: 79b9091221264fb2ae68cdd43d3170acf804024bf2b5028d8f879a9e621f177c8f52c00f577b7193b8314588e0cf60ed705f1af653c757f00894caec2a761b58
@@ -1,6 +1,8 @@
1
1
  module Serverspec
2
2
  module Type
3
3
  class Command < Base
4
+ attr_accessor :result
5
+
4
6
  def return_stdout?(content)
5
7
  ret = backend.run_command(@name)
6
8
  if content.instance_of?(Regexp)
@@ -26,6 +28,18 @@ module Serverspec
26
28
  ret = backend.run_command(@name)
27
29
  ret[:exit_status].to_i == status
28
30
  end
31
+
32
+ def stdout
33
+ if @result.nil?
34
+ @result = backend.run_command(@name)[:stdout]
35
+ end
36
+ @result
37
+ end
38
+
39
+ # In ssh access with pty, stderr is merged to stdout
40
+ # See http://stackoverflow.com/questions/7937651/receiving-extended-data-with-ssh-using-twisted-conch-as-client
41
+ # So I use stdout instead of stderr
42
+ alias :stderr :stdout
29
43
  end
30
44
  end
31
45
  end
@@ -1,3 +1,3 @@
1
1
  module Serverspec
2
- VERSION = "0.10.5"
2
+ VERSION = "0.10.6"
3
3
  end
@@ -48,3 +48,22 @@ describe command('cat /etc/resolv.conf') do
48
48
  it { should return_exit_status 0 }
49
49
  its(:command) { should eq 'cat /etc/resolv.conf' }
50
50
  end
51
+
52
+ describe command('ls -al /') do
53
+ let(:stdout) { <<EOF
54
+ total 88
55
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 .
56
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 ..
57
+ drwxr-xr-x 2 root root 4096 Sep 11 16:43 bin
58
+ drwxr-xr-x 3 root root 4096 Sep 23 18:14 boot
59
+ drwxr-xr-x 14 root root 4260 Oct 14 16:14 dev
60
+ drwxr-xr-x 104 root root 4096 Oct 14 17:34 etc
61
+ drwxr-xr-x 8 root root 4096 Oct 1 15:09 home
62
+ EOF
63
+ }
64
+
65
+ its(:stdout) { should match /bin/ }
66
+ its(:stderr) { should match /bin/ }
67
+
68
+ its(:stdout) { should eq stdout }
69
+ end
@@ -48,3 +48,22 @@ describe command('cat /etc/resolv.conf') do
48
48
  it { should return_exit_status 0 }
49
49
  its(:command) { should eq 'cat /etc/resolv.conf' }
50
50
  end
51
+
52
+ describe command('ls -al /') do
53
+ let(:stdout) { <<EOF
54
+ total 88
55
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 .
56
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 ..
57
+ drwxr-xr-x 2 root root 4096 Sep 11 16:43 bin
58
+ drwxr-xr-x 3 root root 4096 Sep 23 18:14 boot
59
+ drwxr-xr-x 14 root root 4260 Oct 14 16:14 dev
60
+ drwxr-xr-x 104 root root 4096 Oct 14 17:34 etc
61
+ drwxr-xr-x 8 root root 4096 Oct 1 15:09 home
62
+ EOF
63
+ }
64
+
65
+ its(:stdout) { should match /bin/ }
66
+ its(:stderr) { should match /bin/ }
67
+
68
+ its(:stdout) { should eq stdout }
69
+ end
@@ -48,3 +48,22 @@ describe command('cat /etc/resolv.conf') do
48
48
  it { should return_exit_status 0 }
49
49
  its(:command) { should eq 'cat /etc/resolv.conf' }
50
50
  end
51
+
52
+ describe command('ls -al /') do
53
+ let(:stdout) { <<EOF
54
+ total 88
55
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 .
56
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 ..
57
+ drwxr-xr-x 2 root root 4096 Sep 11 16:43 bin
58
+ drwxr-xr-x 3 root root 4096 Sep 23 18:14 boot
59
+ drwxr-xr-x 14 root root 4260 Oct 14 16:14 dev
60
+ drwxr-xr-x 104 root root 4096 Oct 14 17:34 etc
61
+ drwxr-xr-x 8 root root 4096 Oct 1 15:09 home
62
+ EOF
63
+ }
64
+
65
+ its(:stdout) { should match /bin/ }
66
+ its(:stderr) { should match /bin/ }
67
+
68
+ its(:stdout) { should eq stdout }
69
+ end
@@ -46,3 +46,22 @@ describe command('cat /etc/resolv.conf') do
46
46
  it { should return_exit_status 0 }
47
47
  its(:command) { should eq 'cat /etc/resolv.conf' }
48
48
  end
49
+
50
+ describe command('ls -al /') do
51
+ let(:stdout) { <<EOF
52
+ total 88
53
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 .
54
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 ..
55
+ drwxr-xr-x 2 root root 4096 Sep 11 16:43 bin
56
+ drwxr-xr-x 3 root root 4096 Sep 23 18:14 boot
57
+ drwxr-xr-x 14 root root 4260 Oct 14 16:14 dev
58
+ drwxr-xr-x 104 root root 4096 Oct 14 17:34 etc
59
+ drwxr-xr-x 8 root root 4096 Oct 1 15:09 home
60
+ EOF
61
+ }
62
+
63
+ its(:stdout) { should match /bin/ }
64
+ its(:stderr) { should match /bin/ }
65
+
66
+ its(:stdout) { should eq stdout }
67
+ end
@@ -48,3 +48,22 @@ describe command('cat /etc/resolv.conf') do
48
48
  it { should return_exit_status 0 }
49
49
  its(:command) { should eq 'cat /etc/resolv.conf' }
50
50
  end
51
+
52
+ describe command('ls -al /') do
53
+ let(:stdout) { <<EOF
54
+ total 88
55
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 .
56
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 ..
57
+ drwxr-xr-x 2 root root 4096 Sep 11 16:43 bin
58
+ drwxr-xr-x 3 root root 4096 Sep 23 18:14 boot
59
+ drwxr-xr-x 14 root root 4260 Oct 14 16:14 dev
60
+ drwxr-xr-x 104 root root 4096 Oct 14 17:34 etc
61
+ drwxr-xr-x 8 root root 4096 Oct 1 15:09 home
62
+ EOF
63
+ }
64
+
65
+ its(:stdout) { should match /bin/ }
66
+ its(:stderr) { should match /bin/ }
67
+
68
+ its(:stdout) { should eq stdout }
69
+ end
@@ -48,3 +48,22 @@ describe command('cat /etc/resolv.conf') do
48
48
  it { should return_exit_status 0 }
49
49
  its(:command) { should eq 'cat /etc/resolv.conf' }
50
50
  end
51
+
52
+ describe command('ls -al /') do
53
+ let(:stdout) { <<EOF
54
+ total 88
55
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 .
56
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 ..
57
+ drwxr-xr-x 2 root root 4096 Sep 11 16:43 bin
58
+ drwxr-xr-x 3 root root 4096 Sep 23 18:14 boot
59
+ drwxr-xr-x 14 root root 4260 Oct 14 16:14 dev
60
+ drwxr-xr-x 104 root root 4096 Oct 14 17:34 etc
61
+ drwxr-xr-x 8 root root 4096 Oct 1 15:09 home
62
+ EOF
63
+ }
64
+
65
+ its(:stdout) { should match /bin/ }
66
+ its(:stderr) { should match /bin/ }
67
+
68
+ its(:stdout) { should eq stdout }
69
+ end
@@ -4,6 +4,7 @@ RSpec.configure do |c|
4
4
  c.os = 'RedHat'
5
5
  end
6
6
 
7
+ =begin
7
8
  describe command('cat /etc/resolv.conf') do
8
9
  let(:stdout) { "nameserver 127.0.0.1\r\n" }
9
10
  it { should return_stdout("nameserver 127.0.0.1") }
@@ -48,3 +49,23 @@ describe command('cat /etc/resolv.conf') do
48
49
  it { should return_exit_status 0 }
49
50
  its(:command) { should eq 'cat /etc/resolv.conf' }
50
51
  end
52
+ =end
53
+
54
+ describe command('ls -al /') do
55
+ let(:stdout) { <<EOF
56
+ total 88
57
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 .
58
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 ..
59
+ drwxr-xr-x 2 root root 4096 Sep 11 16:43 bin
60
+ drwxr-xr-x 3 root root 4096 Sep 23 18:14 boot
61
+ drwxr-xr-x 14 root root 4260 Oct 14 16:14 dev
62
+ drwxr-xr-x 104 root root 4096 Oct 14 17:34 etc
63
+ drwxr-xr-x 8 root root 4096 Oct 1 15:09 home
64
+ EOF
65
+ }
66
+
67
+ its(:stdout) { should match /bin/ }
68
+ its(:stderr) { should match /bin/ }
69
+
70
+ its(:stdout) { should eq stdout }
71
+ end
@@ -46,3 +46,22 @@ describe command('cat /etc/resolv.conf') do
46
46
  it { should return_exit_status 0 }
47
47
  its(:command) { should eq 'cat /etc/resolv.conf' }
48
48
  end
49
+
50
+ describe command('ls -al /') do
51
+ let(:stdout) { <<EOF
52
+ total 88
53
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 .
54
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 ..
55
+ drwxr-xr-x 2 root root 4096 Sep 11 16:43 bin
56
+ drwxr-xr-x 3 root root 4096 Sep 23 18:14 boot
57
+ drwxr-xr-x 14 root root 4260 Oct 14 16:14 dev
58
+ drwxr-xr-x 104 root root 4096 Oct 14 17:34 etc
59
+ drwxr-xr-x 8 root root 4096 Oct 1 15:09 home
60
+ EOF
61
+ }
62
+
63
+ its(:stdout) { should match /bin/ }
64
+ its(:stderr) { should match /bin/ }
65
+
66
+ its(:stdout) { should eq stdout }
67
+ end
@@ -48,3 +48,22 @@ describe command('cat /etc/resolv.conf') do
48
48
  it { should return_exit_status 0 }
49
49
  its(:command) { should eq 'cat /etc/resolv.conf' }
50
50
  end
51
+
52
+ describe command('ls -al /') do
53
+ let(:stdout) { <<EOF
54
+ total 88
55
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 .
56
+ drwxr-xr-x 23 root root 4096 Oct 10 17:19 ..
57
+ drwxr-xr-x 2 root root 4096 Sep 11 16:43 bin
58
+ drwxr-xr-x 3 root root 4096 Sep 23 18:14 boot
59
+ drwxr-xr-x 14 root root 4260 Oct 14 16:14 dev
60
+ drwxr-xr-x 104 root root 4096 Oct 14 17:34 etc
61
+ drwxr-xr-x 8 root root 4096 Oct 1 15:09 home
62
+ EOF
63
+ }
64
+
65
+ its(:stdout) { should match /bin/ }
66
+ its(:stderr) { should match /bin/ }
67
+
68
+ its(:stdout) { should eq stdout }
69
+ 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: 0.10.5
4
+ version: 0.10.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gosuke Miyashita
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-15 00:00:00.000000000 Z
11
+ date: 2013-10-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-ssh
@@ -310,7 +310,6 @@ files:
310
310
  - spec/plamo/zfs_spec.rb
311
311
  - spec/redhat/cgroup_spec.rb
312
312
  - spec/redhat/command_spec.rb
313
- - spec/redhat/commands_spec.rb
314
313
  - spec/redhat/cron_spec.rb
315
314
  - spec/redhat/default_gateway_spec.rb
316
315
  - spec/redhat/file_spec.rb
@@ -330,7 +329,6 @@ files:
330
329
  - spec/redhat/user_spec.rb
331
330
  - spec/redhat/yumrepo_spec.rb
332
331
  - spec/redhat/zfs_spec.rb
333
- - spec/smartos/commands_spec.rb
334
332
  - spec/smartos/mail_alias_spec.rb
335
333
  - spec/solaris/command_spec.rb
336
334
  - spec/solaris/cron_spec.rb
@@ -349,7 +347,6 @@ files:
349
347
  - spec/solaris/svcprop_spec.rb
350
348
  - spec/solaris/user_spec.rb
351
349
  - spec/solaris/zfs_spec.rb
352
- - spec/solaris10/commands_spec.rb
353
350
  - spec/solaris10/mail_alias_spec.rb
354
351
  - spec/solaris10/php_config_spec.rb
355
352
  - spec/solaris11/command_spec.rb
@@ -509,7 +506,6 @@ test_files:
509
506
  - spec/plamo/zfs_spec.rb
510
507
  - spec/redhat/cgroup_spec.rb
511
508
  - spec/redhat/command_spec.rb
512
- - spec/redhat/commands_spec.rb
513
509
  - spec/redhat/cron_spec.rb
514
510
  - spec/redhat/default_gateway_spec.rb
515
511
  - spec/redhat/file_spec.rb
@@ -529,7 +525,6 @@ test_files:
529
525
  - spec/redhat/user_spec.rb
530
526
  - spec/redhat/yumrepo_spec.rb
531
527
  - spec/redhat/zfs_spec.rb
532
- - spec/smartos/commands_spec.rb
533
528
  - spec/smartos/mail_alias_spec.rb
534
529
  - spec/solaris/command_spec.rb
535
530
  - spec/solaris/cron_spec.rb
@@ -548,7 +543,6 @@ test_files:
548
543
  - spec/solaris/svcprop_spec.rb
549
544
  - spec/solaris/user_spec.rb
550
545
  - spec/solaris/zfs_spec.rb
551
- - spec/solaris10/commands_spec.rb
552
546
  - spec/solaris10/mail_alias_spec.rb
553
547
  - spec/solaris10/php_config_spec.rb
554
548
  - spec/solaris11/command_spec.rb
@@ -1,15 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.configure do |c|
4
- c.os = 'RedHat'
5
- end
6
-
7
- describe 'check_yumrepo' do
8
- subject { commands.check_yumrepo('epel') }
9
- it { should eq 'yum repolist all -C | grep ^epel' }
10
- end
11
-
12
- describe 'check_yumrepo_enabled' do
13
- subject { commands.check_yumrepo_enabled('epel') }
14
- it { should eq 'yum repolist all -C | grep ^epel | grep enabled' }
15
- end
@@ -1,59 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.configure do |c|
4
- c.os = 'SmartOS'
5
- end
6
-
7
- ## SmartOS
8
- describe 'check_installed' do
9
- subject { commands.check_installed('httpd') }
10
- it { should eq '/opt/local/bin/pkgin list 2> /dev/null | grep -qw ^httpd' }
11
- end
12
-
13
- ## SmartOS
14
- describe 'check_installed' do
15
- subject { commands.check_installed('httpd', '2.2') }
16
- it { should eq '/opt/local/bin/pkgin list 2> /dev/null | grep -qw ^httpd-2.2' }
17
- end
18
-
19
- describe 'check_zfs' do
20
- context 'check without properties' do
21
- subject { commands.check_zfs('rpool') }
22
- it { should eq "zfs list -H rpool" }
23
- end
24
-
25
- context 'check with a property' do
26
- subject { commands.check_zfs('rpool', { 'mountpoint' => '/rpool' }) }
27
- it { should eq "zfs list -H -o mountpoint rpool | grep -- \\^/rpool\\$" }
28
- end
29
-
30
- context 'check with multiple properties' do
31
- subject { commands.check_zfs('rpool', { 'mountpoint' => '/rpool', 'compression' => 'off' }) }
32
- it { should eq "zfs list -H -o compression rpool | grep -- \\^off\\$ && zfs list -H -o mountpoint rpool | grep -- \\^/rpool\\$" }
33
- end
34
- end
35
-
36
- describe 'check_ip_filter_rule' do
37
- subject { commands.check_ipfilter_rule('pass in quick on lo0 all') }
38
- it { should eq "ipfstat -io 2> /dev/null | grep -- pass\\ in\\ quick\\ on\\ lo0\\ all" }
39
- end
40
-
41
- describe 'check_ipnat_rule' do
42
- subject { commands.check_ipnat_rule('map net1 192.168.0.0/24 -> 0.0.0.0/32') }
43
- it { should eq "ipnat -l 2> /dev/null | grep -- \\^map\\ net1\\ 192.168.0.0/24\\ -\\>\\ 0.0.0.0/32\\$" }
44
- end
45
-
46
- describe 'check_svcprop' do
47
- subject { commands.check_svcprop('svc:/network/http:apache22', 'httpd/enable_64bit','false') }
48
- it { should eq "svcprop -p httpd/enable_64bit svc:/network/http:apache22 | grep -- \\^false\\$" }
49
- end
50
-
51
- describe 'check_svcprops' do
52
- subject {
53
- commands.check_svcprops('svc:/network/http:apache22', {
54
- 'httpd/enable_64bit' => 'false',
55
- 'httpd/server_type' => 'worker',
56
- })
57
- }
58
- it { should eq "svcprop -p httpd/enable_64bit svc:/network/http:apache22 | grep -- \\^false\\$ && svcprop -p httpd/server_type svc:/network/http:apache22 | grep -- \\^worker\\$" }
59
- end
@@ -1,47 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.configure do |c|
4
- c.os = 'Solaris10'
5
- end
6
-
7
- describe 'check_zfs' do
8
- context 'check without properties' do
9
- subject { commands.check_zfs('rpool') }
10
- it { should eq "zfs list -H rpool" }
11
- end
12
-
13
- context 'check with a property' do
14
- subject { commands.check_zfs('rpool', { 'mountpoint' => '/rpool' }) }
15
- it { should eq "zfs list -H -o mountpoint rpool | grep -- \\^/rpool\\$" }
16
- end
17
-
18
- context 'check with multiple properties' do
19
- subject { commands.check_zfs('rpool', { 'mountpoint' => '/rpool', 'compression' => 'off' }) }
20
- it { should eq "zfs list -H -o compression rpool | grep -- \\^off\\$ && zfs list -H -o mountpoint rpool | grep -- \\^/rpool\\$" }
21
- end
22
- end
23
-
24
- describe 'check_ip_filter_rule' do
25
- subject { commands.check_ipfilter_rule('pass in quick on lo0 all') }
26
- it { should eq "ipfstat -io 2> /dev/null | grep -- pass\\ in\\ quick\\ on\\ lo0\\ all" }
27
- end
28
-
29
- describe 'check_ipnat_rule' do
30
- subject { commands.check_ipnat_rule('map net1 192.168.0.0/24 -> 0.0.0.0/32') }
31
- it { should eq "ipnat -l 2> /dev/null | grep -- \\^map\\ net1\\ 192.168.0.0/24\\ -\\>\\ 0.0.0.0/32\\$" }
32
- end
33
-
34
- describe 'check_svcprop' do
35
- subject { commands.check_svcprop('svc:/network/http:apache22', 'httpd/enable_64bit','false') }
36
- it { should eq "svcprop -p httpd/enable_64bit svc:/network/http:apache22 | grep -- \\^false\\$" }
37
- end
38
-
39
- describe 'check_svcprops' do
40
- subject {
41
- commands.check_svcprops('svc:/network/http:apache22', {
42
- 'httpd/enable_64bit' => 'false',
43
- 'httpd/server_type' => 'worker',
44
- })
45
- }
46
- it { should eq "svcprop -p httpd/enable_64bit svc:/network/http:apache22 | grep -- \\^false\\$ && svcprop -p httpd/server_type svc:/network/http:apache22 | grep -- \\^worker\\$" }
47
- end