sensu-plugins-minio 0.0.1 → 0.0.5

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
  SHA256:
3
- metadata.gz: 35f60a0e03d4cd45c327c445ca34cb00da52ac632dbffcb3d2d9d7654b460544
4
- data.tar.gz: f0b97784a6b4cbf5abf12413f5ee853b85ec804a013ff8aeb744cb86337b1c73
3
+ metadata.gz: 19ac09e90e84fceb0d61c7603997fe6de94944dc1a0694880adbbdb5d386e0df
4
+ data.tar.gz: 1fd3fdd53520190c69bf82202bd4601c3bfea3f87608b54210bb5318fbe147b7
5
5
  SHA512:
6
- metadata.gz: 69d90a95f4530b3fe770f2102f97e74a58442a866cd4a3b606b305ec86fb584a54aa396e4321a1b0b0e7559f48d192cbafd9490348a140569eaf2425f6eb7672
7
- data.tar.gz: 7f357373eefa2b99d5e6d3635f7c3dd44201b75c6042b1678b1e7c9d149d1a46ca56d84e61c139063215002108aa120a200dfea98584344abaebb0edc681270b
6
+ metadata.gz: bae5ce47c300d7a8d646cee087d88f1f56b4de7e6462045629a315bfe29547f6756a598d114550fd55df9461dcb5529dd294f676cae91dad19a5eb5b10f16941
7
+ data.tar.gz: 1dec5b0cd15064f3f347170ebcf1a02af353c4f96d0df9f35d50a287a028bd7fc275d5399307a568f8aa3452d4509d2576bcdaecc78f217592bf4e654d718be0
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 2.7.0
data/Gemfile.lock CHANGED
@@ -1,69 +1,73 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- sensu-plugins-minio (0.0.1)
4
+ sensu-plugins-minio (0.0.5)
5
5
  sensu-plugin (~> 2.1)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- addressable (2.7.0)
10
+ addressable (2.8.0)
11
11
  public_suffix (>= 2.0.2, < 5.0)
12
- ast (2.4.0)
13
- crack (0.4.3)
14
- safe_yaml (~> 1.0.0)
15
- diff-lcs (1.3)
16
- hashdiff (1.0.0)
17
- jaro_winkler (1.5.3)
18
- json (2.2.0)
12
+ ast (2.4.2)
13
+ crack (0.4.5)
14
+ rexml
15
+ diff-lcs (1.4.4)
16
+ hashdiff (1.0.1)
17
+ json (2.5.1)
19
18
  mixlib-cli (1.7.0)
20
- parallel (1.17.0)
21
- parser (2.6.4.0)
22
- ast (~> 2.4.0)
23
- public_suffix (4.0.1)
19
+ parallel (1.20.1)
20
+ parser (3.0.2.0)
21
+ ast (~> 2.4.1)
22
+ public_suffix (4.0.6)
24
23
  rainbow (3.0.0)
25
- rake (10.5.0)
26
- rspec (3.8.0)
27
- rspec-core (~> 3.8.0)
28
- rspec-expectations (~> 3.8.0)
29
- rspec-mocks (~> 3.8.0)
30
- rspec-core (3.8.2)
31
- rspec-support (~> 3.8.0)
32
- rspec-expectations (3.8.4)
24
+ rake (13.0.6)
25
+ regexp_parser (2.1.1)
26
+ rexml (3.2.5)
27
+ rspec (3.10.0)
28
+ rspec-core (~> 3.10.0)
29
+ rspec-expectations (~> 3.10.0)
30
+ rspec-mocks (~> 3.10.0)
31
+ rspec-core (3.10.1)
32
+ rspec-support (~> 3.10.0)
33
+ rspec-expectations (3.10.1)
33
34
  diff-lcs (>= 1.2.0, < 2.0)
34
- rspec-support (~> 3.8.0)
35
- rspec-mocks (3.8.1)
35
+ rspec-support (~> 3.10.0)
36
+ rspec-mocks (3.10.2)
36
37
  diff-lcs (>= 1.2.0, < 2.0)
37
- rspec-support (~> 3.8.0)
38
- rspec-support (3.8.2)
39
- rubocop (0.74.0)
40
- jaro_winkler (~> 1.5.1)
38
+ rspec-support (~> 3.10.0)
39
+ rspec-support (3.10.2)
40
+ rubocop (0.93.1)
41
41
  parallel (~> 1.10)
42
- parser (>= 2.6)
42
+ parser (>= 2.7.1.5)
43
43
  rainbow (>= 2.2.2, < 4.0)
44
+ regexp_parser (>= 1.8)
45
+ rexml
46
+ rubocop-ast (>= 0.6.0)
44
47
  ruby-progressbar (~> 1.7)
45
- unicode-display_width (>= 1.4.0, < 1.7)
46
- ruby-progressbar (1.10.1)
47
- safe_yaml (1.0.5)
48
+ unicode-display_width (>= 1.4.0, < 2.0)
49
+ rubocop-ast (1.8.0)
50
+ parser (>= 3.0.1.1)
51
+ ruby-progressbar (1.11.0)
48
52
  sensu-plugin (2.7.1)
49
53
  json (< 3.0.0)
50
54
  mixlib-cli (~> 1.5)
51
- unicode-display_width (1.6.0)
52
- webmock (3.7.2)
55
+ unicode-display_width (1.7.0)
56
+ webmock (3.13.0)
53
57
  addressable (>= 2.3.6)
54
58
  crack (>= 0.3.2)
55
59
  hashdiff (>= 0.4.0, < 2.0.0)
56
60
 
57
61
  PLATFORMS
58
- ruby
62
+ x86_64-linux
59
63
 
60
64
  DEPENDENCIES
61
- bundler (~> 1.11)
62
- rake (~> 10.0)
63
- rspec (~> 3.7)
65
+ bundler (~> 2.2)
66
+ rake (~> 13.0)
67
+ rspec (~> 3.10)
64
68
  rubocop (~> 0.54)
65
69
  sensu-plugins-minio!
66
70
  webmock (~> 3.3)
67
71
 
68
72
  BUNDLED WITH
69
- 1.16.1
73
+ 2.2.23
@@ -45,34 +45,38 @@ class CheckMinioUpdate < Sensu::Plugin::Check::CLI
45
45
 
46
46
  begin
47
47
  Timeout.timeout(timeout) do
48
- check_update(checkurl, platform)
48
+ latest_version = get_latest_version(checkurl, platform)
49
+ local_version = get_local_version
50
+
51
+ if local_version == latest_version
52
+ ok 'No new minio version available'
53
+ else
54
+ critical "New minio version available #{latest_version}"
55
+ end
49
56
  end
57
+ rescue IOError => e
58
+ unknown "#{e.message}"
50
59
  rescue Timeout::Error
51
60
  unknown 'Connection timed out'
52
61
  end
53
62
  end
54
63
 
55
- def check_update(checkurl, platform)
64
+ def get_latest_version(checkurl, platform)
56
65
  uri = URI.parse("#{checkurl}/#{platform}/minio.shasum")
57
66
  response = Net::HTTP.get_response(uri)
58
67
 
59
- if response.is_a?(Net::HTTPSuccess)
60
- latest_version = response.body.split.last.split('.', 2).last
61
- else
62
- unknown "Unable to gather latest minio version: #{response.body}"
68
+ unless response.is_a?(Net::HTTPSuccess)
69
+ raise IOError, "Unable to gather latest minio version: #{response.body}"
63
70
  end
64
71
 
65
- stdout_str, error_str, status = Open3.capture3('minio version')
66
- if status.success?
67
- local_version = stdout_str.lines.at(1).split.last
68
- else
69
- unknown "Unable to gather local minio version: #{error_str}"
70
- end
72
+ return response.body.split.last.split('.', 2).last
73
+ end
71
74
 
72
- if latest_version == local_version
73
- ok 'No new minio version available'
74
- else
75
- critical "New minio version available #{latest_version}"
76
- end
75
+ def get_local_version
76
+ stdout, stderr, status = Open3.capture3({ 'PATH' => ENV['PATH'] }, 'minio --version', :unsetenv_others => true)
77
+
78
+ raise IOError, "Unable to gather local minio version: #{stderr}" unless status.success?
79
+
80
+ return stdout.split.last
77
81
  end
78
82
  end
@@ -3,7 +3,7 @@
3
3
  module Sensu
4
4
  module Plugins
5
5
  module Minio
6
- VERSION = '0.0.1'
6
+ VERSION = '0.0.5'
7
7
  end
8
8
  end
9
9
  end
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
8
8
  spec.name = 'sensu-plugins-minio'
9
9
  spec.version = Sensu::Plugins::Minio::VERSION
10
10
  spec.licenses = ['MIT']
11
- spec.authors = ['Hauke Altmann']
11
+ spec.authors = ['Hauke Altmann', 'Jonathan Schlue']
12
12
  spec.email = ['info@aboutsource.net']
13
13
 
14
14
  spec.summary = 'Check if there are updates for the local minio server instance'
@@ -22,9 +22,9 @@ Gem::Specification.new do |spec|
22
22
  end
23
23
 
24
24
  spec.add_dependency 'sensu-plugin', '~> 2.1'
25
- spec.add_development_dependency 'bundler', '~> 1.11'
26
- spec.add_development_dependency 'rake', '~> 10.0'
27
- spec.add_development_dependency 'rspec', '~> 3.7'
25
+ spec.add_development_dependency 'bundler', '~> 2.2'
26
+ spec.add_development_dependency 'rake', '~> 13.0'
27
+ spec.add_development_dependency 'rspec', '~> 3.10'
28
28
  spec.add_development_dependency 'rubocop', '~> 0.54'
29
29
  spec.add_development_dependency 'webmock', '~> 3.3'
30
30
  end
metadata CHANGED
@@ -1,14 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sensu-plugins-minio
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hauke Altmann
8
+ - Jonathan Schlue
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2019-10-14 00:00:00.000000000 Z
12
+ date: 2021-07-20 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: sensu-plugin
@@ -30,42 +31,42 @@ dependencies:
30
31
  requirements:
31
32
  - - "~>"
32
33
  - !ruby/object:Gem::Version
33
- version: '1.11'
34
+ version: '2.2'
34
35
  type: :development
35
36
  prerelease: false
36
37
  version_requirements: !ruby/object:Gem::Requirement
37
38
  requirements:
38
39
  - - "~>"
39
40
  - !ruby/object:Gem::Version
40
- version: '1.11'
41
+ version: '2.2'
41
42
  - !ruby/object:Gem::Dependency
42
43
  name: rake
43
44
  requirement: !ruby/object:Gem::Requirement
44
45
  requirements:
45
46
  - - "~>"
46
47
  - !ruby/object:Gem::Version
47
- version: '10.0'
48
+ version: '13.0'
48
49
  type: :development
49
50
  prerelease: false
50
51
  version_requirements: !ruby/object:Gem::Requirement
51
52
  requirements:
52
53
  - - "~>"
53
54
  - !ruby/object:Gem::Version
54
- version: '10.0'
55
+ version: '13.0'
55
56
  - !ruby/object:Gem::Dependency
56
57
  name: rspec
57
58
  requirement: !ruby/object:Gem::Requirement
58
59
  requirements:
59
60
  - - "~>"
60
61
  - !ruby/object:Gem::Version
61
- version: '3.7'
62
+ version: '3.10'
62
63
  type: :development
63
64
  prerelease: false
64
65
  version_requirements: !ruby/object:Gem::Requirement
65
66
  requirements:
66
67
  - - "~>"
67
68
  - !ruby/object:Gem::Version
68
- version: '3.7'
69
+ version: '3.10'
69
70
  - !ruby/object:Gem::Dependency
70
71
  name: rubocop
71
72
  requirement: !ruby/object:Gem::Requirement
@@ -103,6 +104,7 @@ extensions: []
103
104
  extra_rdoc_files: []
104
105
  files:
105
106
  - ".gitignore"
107
+ - ".ruby-version"
106
108
  - Gemfile
107
109
  - Gemfile.lock
108
110
  - LICENSE
@@ -132,8 +134,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
132
134
  - !ruby/object:Gem::Version
133
135
  version: '0'
134
136
  requirements: []
135
- rubyforge_project:
136
- rubygems_version: 2.7.6
137
+ rubygems_version: 3.1.2
137
138
  signing_key:
138
139
  specification_version: 4
139
140
  summary: Check if there are updates for the local minio server instance