serverspec 2.41.2 → 2.41.7

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: c941f9662228e3a5559d24136fbcef3d55749f67
4
- data.tar.gz: e9b5ee466f27938b18e248c44691f96c8b1392c3
2
+ SHA256:
3
+ metadata.gz: 6e4825adcbf2c79093752621578ea9a307a0a58330742d0a1b8843016ac1b0fb
4
+ data.tar.gz: c1fbaa08a9df4cc5b6c76a69d7a2b06b37442af4a49319d30e81f791f68e1c31
5
5
  SHA512:
6
- metadata.gz: c7689e8ddf58d519952d1de70c16dae49ba14d22c1d5a563d55b00892159a8acf393051637b084bb1b5fd33a0a59121b7bffeccb49f90e48f729d725c61c7fa0
7
- data.tar.gz: fed08fa17cd1c0c8ac91bbebe0c15ab367e2c1b04be168242e063765ece538cc629fe4d2bd073af12a11e67c4004f5ba8dc8d96d6b85bde5ea8d4424bafce50e
6
+ metadata.gz: 87475efc90b46f44b6ecf14ad44deb16ba64818b9b45abd45b36d089f87f6f4cefa8e0f4674a6035c3b6ca9b07cd8422902f861d85bf6ed6a235d10d0b824d56
7
+ data.tar.gz: 6772e53f96bd63d7eec0ea4c876e00273bf3169604d25684ae9396361c55e2f92f30e797b2f2bfd11c54508f6bc3651928896703f32aa9302a707f14c30989d9
data/.github/stale.yml ADDED
@@ -0,0 +1,18 @@
1
+ # Number of days of inactivity before an issue becomes stale
2
+ daysUntilStale: 60
3
+ # Number of days of inactivity before a stale issue is closed
4
+ daysUntilClose: 7
5
+ # Issues with these labels will never be considered stale
6
+ exemptLabels:
7
+ - pinned
8
+ - security
9
+ # Label to use when marking an issue as stale
10
+ staleLabel: wontfix
11
+ # Comment to post when marking an issue as stale. Set to `false` to disable
12
+ markComment: >
13
+ This issue has been automatically marked as stale because it has not had
14
+ recent activity. It will be closed if no further activity occurs. Thank you
15
+ for your contributions.
16
+ # Comment to post when closing a stale issue. Set to `false` to disable
17
+ closeComment: false
18
+
data/.travis.yml CHANGED
@@ -1,19 +1,23 @@
1
1
  language: ruby
2
2
 
3
3
  rvm:
4
- - 1.8.7
5
4
  - 1.9.3
6
5
  - 2.0.0
7
6
  - 2.1.1
8
7
  - 2.2.4
9
- - 2.3.0
8
+ - 2.3.6
9
+ - 2.4.3
10
+ - 2.5.0
10
11
 
11
12
  before_install:
12
- - gem update bundler
13
+ - travis_retry gem update --system 2.7.8
14
+ - travis_retry gem install bundler -v 1.17.3
15
+ - travis_retry gem uninstall -i /home/travis/.rvm/gems/ruby-2.3.7@global bundler || echo
13
16
 
14
17
  script:
15
18
  - bundle exec rake spec
16
19
 
20
+ dist: trusty
17
21
  sudo: false
18
22
  cache: bundler
19
23
  notifications:
data/WINDOWS_SUPPORT.md CHANGED
@@ -26,8 +26,21 @@ user = <username>
26
26
  pass = <password>
27
27
  endpoint = "http://#{ENV['TARGET_HOST']}:5985/wsman"
28
28
 
29
- winrm = ::WinRM::WinRMWebService.new(endpoint, :ssl, :user => user, :pass => pass, :basic_auth_only => true)
30
- winrm.set_timeout 300 # 5 minutes max timeout for any operation
29
+ if Gem::Version.new(WinRM::VERSION) < Gem::Version.new('2')
30
+ winrm = ::WinRM::WinRMWebService.new(endpoint, :ssl, :user => user, :pass => pass, :basic_auth_only => true)
31
+ winrm.set_timeout 300 # 5 minutes max timeout for any operation
32
+ else
33
+ opts = {
34
+ user: user,
35
+ password: pass,
36
+ endpoint: endpoint,
37
+ operation_timeout: 300,
38
+ no_ssl_peer_verification: false,
39
+ }
40
+
41
+ winrm = ::WinRM::Connection.new(opts)
42
+ end
43
+
31
44
  Specinfra.configuration.winrm = winrm
32
45
  ```
33
46
 
data/appveyor.yml CHANGED
@@ -14,6 +14,9 @@ environment:
14
14
  - ruby_version: "21"
15
15
  - ruby_version: "22"
16
16
  - ruby_version: "23"
17
+ - ruby_version: "24"
18
+ - ruby_version: "25"
19
+ - ruby_version: "26"
17
20
 
18
21
  matrix:
19
22
  allow_failures:
@@ -32,6 +35,12 @@ cache:
32
35
  - C:\Ruby22\bin -> appveyor.yml
33
36
  - C:\Ruby23\lib\ruby\gems\2.2.0 -> appveyor.yml
34
37
  - C:\Ruby23\bin -> appveyor.yml
38
+ - C:\Ruby24\lib\ruby\gems\2.4.0 -> appveyor.yml
39
+ - C:\Ruby24\bin -> appveyor.yml
40
+ - C:\Ruby25\lib\ruby\gems\2.5.0 -> appveyor.yml
41
+ - C:\Ruby25\bin -> appveyor.yml
42
+ - C:\Ruby26\lib\ruby\gems\2.6.0 -> appveyor.yml
43
+ - C:\Ruby26\bin
35
44
 
36
45
  install:
37
46
  - git submodule update --init --recursive
@@ -46,10 +55,11 @@ install:
46
55
  - ruby --version
47
56
  - gem --version
48
57
  - appveyor DownloadFile -Url %bundler_url% -FileName bundler.gem
49
- - gem install --local bundler.gem --no-ri --no-rdoc ## appveyor often stops `gem install bundler`..?
58
+ - gem install --local bundler.gem --no-document --force ## appveyor often stops `gem install bundler`..?
50
59
  - ps: $PSVersionTable
51
60
 
52
61
  build_script:
62
+ - set SSL_CERT_FILE=C:/ruby24-x64/ssl/cert.pem
53
63
  - ruby -rfileutils -e 'FileUtils.rm_r(File.join(Gem.dir, "cache", "bundler")) if Dir.exists?(File.join(Gem.dir, "cache", "bundler"))'
54
64
  - bundle install --jobs 3 --retry 3
55
65
  - net user
@@ -1,9 +1,9 @@
1
1
  RSpec::Matchers.define :be_installed do
2
- match do |name|
2
+ match do |subject|
3
3
  if subject.class.name == 'Serverspec::Type::SelinuxModule'
4
- name.installed?(@version)
4
+ subject.installed?(@version)
5
5
  else
6
- name.installed?(@provider, @version)
6
+ subject.installed?(@provider, @version)
7
7
  end
8
8
  end
9
9
 
@@ -308,8 +308,21 @@ user = <username>
308
308
  pass = <password>
309
309
  endpoint = "http://#{ENV['TARGET_HOST']}:5985/wsman"
310
310
 
311
- winrm = ::WinRM::WinRMWebService.new(endpoint, :ssl, :user => user, :pass => pass, :basic_auth_only => true)
312
- winrm.set_timeout 300 # 5 minutes max timeout for any operation
311
+ if Gem::Version.new(WinRM::VERSION) < Gem::Version.new('2')
312
+ winrm = ::WinRM::WinRMWebService.new(endpoint, :ssl, :user => user, :pass => pass, :basic_auth_only => true)
313
+ winrm.set_timeout 300 # 5 minutes max timeout for any operation
314
+ else
315
+ opts = {
316
+ user: user,
317
+ password: pass,
318
+ endpoint: endpoint,
319
+ operation_timeout: 300,
320
+ no_ssl_peer_verification: false,
321
+ }
322
+
323
+ winrm = ::WinRM::Connection.new(opts)
324
+ end
325
+
313
326
  Specinfra.configuration.winrm = winrm
314
327
  <% end -%>
315
328
  EOF
@@ -1,7 +1,8 @@
1
1
  module Serverspec::Type
2
2
  class Service < Base
3
3
  def enabled?(level, under=nil)
4
- check_method = "check_service_is_enabled" + (under ? "_#{under}" : '')
4
+ under = under ? "_under_#{under.gsub(/^under_/, '')}" : ''
5
+ check_method = "check_service_is_enabled#{under}"
5
6
 
6
7
  if level
7
8
  @runner.send(check_method.to_sym, @name, level)
@@ -7,11 +7,11 @@ module Serverspec::Type
7
7
  end
8
8
 
9
9
  def subject
10
- run_openssl_command_with("-subject -noout").stdout.chomp.gsub(/^subject= */,'')
10
+ normalize_dn(run_openssl_command_with("-subject -noout").stdout.chomp.gsub(/^subject= */,''))
11
11
  end
12
12
 
13
13
  def issuer
14
- run_openssl_command_with("-issuer -noout").stdout.chomp.gsub(/^issuer= */,'')
14
+ normalize_dn(run_openssl_command_with("-issuer -noout").stdout.chomp.gsub(/^issuer= */,''))
15
15
  end
16
16
 
17
17
  def email
@@ -81,5 +81,12 @@ module Serverspec::Type
81
81
  res.merge({ kv_arr[0].to_sym => time })
82
82
  end
83
83
  end
84
+
85
+ # Normalize output between openssl versions.
86
+ def normalize_dn(dn)
87
+ return dn unless dn.start_with?('/')
88
+ # normalize openssl < 1.1 to >= 1.1 output
89
+ dn[1..-1].split('/').join(', ').gsub('=', ' = ')
90
+ end
84
91
  end
85
92
  end
@@ -1,3 +1,3 @@
1
1
  module Serverspec
2
- VERSION = "2.41.2"
2
+ VERSION = "2.41.7"
3
3
  end
data/serverspec.gemspec CHANGED
@@ -22,7 +22,6 @@ Gem::Specification.new do |spec|
22
22
  spec.add_runtime_dependency "rspec-its"
23
23
  spec.add_runtime_dependency "multi_json"
24
24
  spec.add_runtime_dependency "specinfra", "~> 2.72"
25
- spec.add_development_dependency "bundler", "~> 1.3"
26
25
  spec.add_development_dependency("json", "~> 1.8") if RUBY_VERSION < "1.9"
27
26
  spec.add_development_dependency "rake", "~> 10.1.1"
28
27
  end
@@ -12,14 +12,24 @@ describe x509_certificate('test.pem') do
12
12
  it { should_not be_certificate }
13
13
  end
14
14
 
15
- describe x509_certificate('test.pem') do
16
- let(:stdout) { sample_subj }
17
- its(:subject) { should eq '/O=some/OU=thing' }
15
+ describe x509_certificate('test-openssl-1.0.pem') do
16
+ let(:stdout) { sample_subj_openssl_1_0 }
17
+ its(:subject) { should eq 'O = some, OU = thing' }
18
18
  end
19
19
 
20
- describe x509_certificate('test.pem') do
21
- let(:stdout) { sample_issuer }
22
- its(:issuer) { should eq '/O=some/OU=issuer' }
20
+ describe x509_certificate('test-openssl-1.1.pem') do
21
+ let(:stdout) { sample_subj_openssl_1_1 }
22
+ its(:subject) { should eq 'O = some, OU = thing' }
23
+ end
24
+
25
+ describe x509_certificate('test-openssl-1.0.pem') do
26
+ let(:stdout) { sample_issuer_openssl_1_0 }
27
+ its(:issuer) { should eq 'O = some, OU = issuer' }
28
+ end
29
+
30
+ describe x509_certificate('test-openssl-1.1.pem') do
31
+ let(:stdout) { sample_issuer_openssl_1_1 }
32
+ its(:issuer) { should eq 'O = some, OU = issuer' }
23
33
  end
24
34
 
25
35
  describe x509_certificate('test.pem') do
@@ -38,18 +48,30 @@ describe x509_certificate('test.pem') do
38
48
  its(:subject_alt_names) { should eq %w[DNS:*.example.com DNS:www.example.net IP:192.0.2.10] }
39
49
  end
40
50
 
41
- def sample_subj
51
+ def sample_subj_openssl_1_0
42
52
  <<'EOS'
43
53
  subject= /O=some/OU=thing
44
54
  EOS
45
55
  end
46
56
 
47
- def sample_issuer
57
+ def sample_subj_openssl_1_1
58
+ <<'EOS'
59
+ subject=O = some, OU = thing
60
+ EOS
61
+ end
62
+
63
+ def sample_issuer_openssl_1_0
48
64
  <<'EOS'
49
65
  issuer= /O=some/OU=issuer
50
66
  EOS
51
67
  end
52
68
 
69
+ def sample_issuer_openssl_1_1
70
+ <<'EOS'
71
+ issuer=O = some, OU = issuer
72
+ EOS
73
+ end
74
+
53
75
  def sample_validity
54
76
  <<'EOS'
55
77
  notBefore=Jul 1 11:11:00 2000 GMT
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.41.2
4
+ version: 2.41.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gosuke Miyashita
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-25 00:00:00.000000000 Z
11
+ date: 2021-06-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -66,20 +66,6 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '2.72'
69
- - !ruby/object:Gem::Dependency
70
- name: bundler
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '1.3'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '1.3'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: rake
85
71
  requirement: !ruby/object:Gem::Requirement
@@ -103,6 +89,7 @@ executables:
103
89
  extensions: []
104
90
  extra_rdoc_files: []
105
91
  files:
92
+ - ".github/stale.yml"
106
93
  - ".gitignore"
107
94
  - ".gitmodules"
108
95
  - ".travis.yml"
@@ -319,7 +306,7 @@ homepage: http://serverspec.org/
319
306
  licenses:
320
307
  - MIT
321
308
  metadata: {}
322
- post_install_message:
309
+ post_install_message:
323
310
  rdoc_options: []
324
311
  require_paths:
325
312
  - lib
@@ -334,9 +321,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
334
321
  - !ruby/object:Gem::Version
335
322
  version: '0'
336
323
  requirements: []
337
- rubyforge_project:
338
- rubygems_version: 2.2.2
339
- signing_key:
324
+ rubygems_version: 3.1.2
325
+ signing_key:
340
326
  specification_version: 4
341
327
  summary: RSpec tests for your servers configured by Puppet, Chef, Itamae or anything
342
328
  else