rubyipmi 0.12.0 → 0.12.1

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
2
  SHA256:
3
- metadata.gz: b400cae906782f5f4d2c2812a67e08db4d01ee28c29d098764eb06172aaece4c
4
- data.tar.gz: eaf5ef307e3b93d26ca97e38776b5e97781602524fff7a9fa726bea86feb1454
3
+ metadata.gz: 6f4f084aa7f49cb5e387e91beb0d0e3127de0c03bf320f49c0ebbb3134c0e37c
4
+ data.tar.gz: 23e6a5dd885284aa9c2806b6ae7196f8d03fbf7009a72b9b89a66cd9a7e9e0b8
5
5
  SHA512:
6
- metadata.gz: 45e700715cfff358dc1409c3521e8a731615a20d31b1f3452b911188fe0e8d85a707367b840ba4a699bab431242edace43ce1ae11018d1cc24394e11e4f61f90
7
- data.tar.gz: 47c8628e9e278a755afc369e04a71914eab88607e3945400bdcb940b8a652cac627c1bcb2e7a0ac6677f5e3ed732e8b7ad08e3e3a2ae2d8f2ec0bb54578513e4
6
+ metadata.gz: 7d7b1f5a620e693dbbc013d80311c45496e9fa49494ed90b936b7e17bc9084123b5951878962ab53738ef484b4bda2d737afa13b9461d7fdf634913022acaabd
7
+ data.tar.gz: 809ac56808cc4183461e6722224220a64be4904940aa7eef59a94abccdcf4a750ecb031c83ec706b4206f0ecc8e60272e1fd3f8d637bca7ec93b5c1100111a4c
data/CHANGELOG.md ADDED
@@ -0,0 +1,236 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased] - 0.12.1
9
+
10
+ ### Fixed
11
+ - Don't re-raise the original exception in basecommand
12
+ - Properly mock capture3 API which returns a Process::Status, not true
13
+ - Don't fail when status was success
14
+ - Strip `which` output like it was before the Ruby 3.0 changes
15
+
16
+ ### Changed
17
+ - Update link to sensu ipmi plugin
18
+
19
+ ## [0.12.0] - 2024
20
+
21
+ ### Added
22
+ - Ruby 3.4 support
23
+ - GitHub Actions for CI/CD testing
24
+ - Logger gem dependency (will be removed in Ruby 3.5)
25
+
26
+ ### Changed
27
+ - Test on Ruby 3.1, 3.2 & 3.3
28
+ - Fix tests for Ruby 3.0
29
+ - Update actions/checkout to v4
30
+ - Remove highline as a runtime dependency
31
+ - Simplify gemspec and Gemfile
32
+ - Use SPDX license code in gemspec
33
+ - Limit dependency ranges to avoid gemspec warnings
34
+ - Let git ignore *.gem files
35
+
36
+ ## [0.11.1] - 2023
37
+
38
+ ### Fixed
39
+ - Exclude hidden files from the gem package
40
+
41
+ ## [0.11.0] - 2023
42
+
43
+ ### Added
44
+ - SensorsMixin to remove duplicate code
45
+ - Rubocop GuardClause support
46
+ - Additional rubocop cops
47
+
48
+ ### Changed
49
+ - Remove jeweler dependency, replace with bundler commands
50
+ - Use HTTPS for homepage field in gemspec
51
+ - Leverage Enumerable#each_with_object
52
+ - Move #drivers_map to a constant
53
+ - Update .rubocop.yml
54
+ - Reword confusing project description
55
+ - Update README.md section on booting to specific devices
56
+ - Remove puppet code and vagrant
57
+
58
+ ### Fixed
59
+ - Fix infinite loop when executing 'lan print' command
60
+ - Fix "NoMethodError: undefined method `success?' for nil:NilClass"
61
+ - Fix rubocop Style/MethodName "Use snake_case for method names"
62
+ - Remove duplicate methods
63
+ - Remove if/else logic and unnecessary return in #validate_status
64
+ - Remove pry statement from method
65
+ - Fix many rubocop style infractions
66
+
67
+ ## [0.10.0] - 2022
68
+
69
+ ### Changed
70
+ - Make the driver default to lan20 (users of older IPMI devices will need to pass the specified driver type)
71
+
72
+ ## [0.9.3] - 2022
73
+
74
+ ### Fixed
75
+ - Normalize the options being passed into the connect method
76
+
77
+ ## [0.9.2] - 2022
78
+
79
+ ### Fixed
80
+ - Fix issue where is_provider_installed? should only return a boolean value instead of raising an error
81
+ - Fix minor style issue where providers_installed? was returning an array when a boolean might have been expected
82
+
83
+ ### Changed
84
+ - Updated README about support and added TOC
85
+
86
+ ## [0.9.1] - 2022
87
+
88
+ ### Fixed
89
+ - Fix issue with connection_works? API call when command raises an error
90
+
91
+ ### Changed
92
+ - Updated README and release notes
93
+ - Fix spelling mistakes
94
+
95
+ ## [0.9.0] - 2022
96
+
97
+ ### Added
98
+ - Ability to generate a logfile
99
+ - Ability to test connection
100
+ - Coveralls support for coverage data
101
+
102
+ ### Changed
103
+ - Move to rspec3 expect syntax
104
+ - Refactor get_diag function to be useful
105
+ - Remove 1.9.2 support and add 2.2 support
106
+ - Updated .gitignore to stop watching Gemfile.lock
107
+ - Updated spec tests to load spec_helper differently
108
+ - Removed development support for Ruby 1.8
109
+
110
+ ### Fixed
111
+ - Fix issue with freeipmi lan info and auto fix
112
+ - Fix issue with options not being deleted for fru
113
+
114
+ ## [0.8.1] - 2021
115
+
116
+ ### Changed
117
+ - Switch to LGPL license
118
+ - Remove rcov in favor of simplecov
119
+ - Updated gemspec and removed rcov from Gemfile
120
+ - Added new rubies to travis testing suite
121
+
122
+ ## [0.8.0] - 2021
123
+
124
+ ### Added
125
+ - Option to specify privilege level
126
+ - Support for multiple driver-types
127
+ - Flexible options hash
128
+
129
+ ### Changed
130
+ - Changed License from GPL to LGPL
131
+ - Refactored new opts hash feature
132
+ - Added unit tests for opts hash feature
133
+ - Updated README
134
+
135
+ ### Fixed
136
+ - Fix ipmitool power.on precheck
137
+
138
+ ## [0.7.0] - 2020
139
+
140
+ ### Added
141
+ - Debug option (set rubyipmi_debug=true environment variable)
142
+ - Attribute reader for result to retrieve from outside classes
143
+ - Travis CI support
144
+
145
+ ### Changed
146
+ - Updated gemspec files
147
+ - Updated README
148
+ - Removed development support for Ruby 2.0.0
149
+
150
+ ### Fixed
151
+ - Fix bug where command was returning the value and not the result
152
+ - Fix bug where bmc-config was not raising an error when errors occurred
153
+ - Fix issues with freeipmi not getting right error code
154
+ - Updated unit tests for error code checking
155
+ - Updated ipmitool spec tests and fixed error code search functionality
156
+
157
+ ## [0.6.0] - 2020
158
+
159
+ ### Added
160
+ - Support for using bmc reset
161
+
162
+ ### Changed
163
+ - Default connection for ipmitool now uses IPMI 2.0
164
+ - Updated license
165
+
166
+ ## [0.5.1] - 2020
167
+
168
+ ### Fixed
169
+ - Fix loading error in rbenv environment
170
+
171
+ ### Changed
172
+ - Updated README
173
+
174
+ ## [0.5.0] - 2020
175
+
176
+ ### Added
177
+ - FRU (Field Replaceable Unit) support
178
+ - Hidden password security
179
+ - Printdiag function
180
+
181
+ ## [0.4.0] - 2020
182
+
183
+ ### Added
184
+ - Sensor support
185
+
186
+ ### Changed
187
+ - Renamed subnet function to netmask function
188
+
189
+ ## [0.3.3] - 2020
190
+
191
+ ### Changed
192
+ - Updated error output
193
+
194
+ ## [0.3.2] - 2020
195
+
196
+ ### Fixed
197
+ - Fix issue with commands not returning value
198
+
199
+ ## [0.3.1] - 2020
200
+
201
+ ### Fixed
202
+ - Fix issue with ipmitool identify
203
+
204
+ ## [0.3.0] - 2020
205
+
206
+ ### Added
207
+ - Makecommand function
208
+ - BMC lan info
209
+ - Boot settings
210
+
211
+ ### Changed
212
+ - Updated tests and lan parser
213
+
214
+ ### Fixed
215
+ - Fix error with getting info object
216
+
217
+ ## [0.2.0] - 2020
218
+
219
+ ### Added
220
+ - BMC info function
221
+
222
+ ### Changed
223
+ - Updated tests
224
+
225
+ ## [0.1.1] - 2020
226
+
227
+ ### Fixed
228
+ - Fix issue with power cycle when system is off
229
+
230
+ ### Changed
231
+ - Updated tests
232
+
233
+ ## [0.1.0] - 2020
234
+
235
+ ### Added
236
+ - Initial release with ruby-freeipmi and ipmitool code support
data/README.md CHANGED
@@ -43,7 +43,7 @@ Rubyipmi was built because I wanted an object oriented way to get data from BMC
43
43
  and if any IPMI hacks/workarounds were required I wanted to build those into the library to make life easier.
44
44
 
45
45
  ## Projects that use Rubyipmi
46
- * https://github.com/sensu/sensu-community-plugins/blob/master/plugins/ipmi/check-sensor.rb
46
+ * https://github.com/sensu-plugins/sensu-plugins-ipmi
47
47
  * https://github.com/theforeman/smart-proxy (Turns Rubyipmi into a Remote Web API Proxy server)
48
48
  * https://github.com/logicminds/ipmispec (just started)
49
49
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.12.0
1
+ 0.12.1
@@ -95,8 +95,7 @@ module Rubyipmi
95
95
  begin
96
96
  fix = ErrorCodes.search(result)
97
97
  @options.merge_notify!(fix)
98
- rescue e
99
- raise e
98
+ rescue
100
99
  Rubyipmi.logger.debug("Could not find fix for error code: \n#{result}") if logger
101
100
  raise "Could not find fix for error code: \n#{result}"
102
101
  end
@@ -108,8 +107,7 @@ module Rubyipmi
108
107
 
109
108
  # This method will check if the results are really valid as the exit code can be misleading and incorrect
110
109
  def validate_status(exitstatus)
111
- raise "Error occurred" unless exitstatus
112
- raise "Error occurred" if exitstatus.is_a?(Process::Status) && exitstatus.success?
110
+ raise "Error occurred" unless exitstatus.respond_to?(:success?) && exitstatus.success?
113
111
 
114
112
  true
115
113
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Rubyipmi
4
- VERSION = '0.12.0'.freeze
4
+ VERSION = '0.12.1'.freeze
5
5
  end
data/lib/rubyipmi.rb CHANGED
@@ -156,7 +156,7 @@ module Rubyipmi
156
156
  logger&.error("Which command returned: #{stderr}") unless status.success?
157
157
 
158
158
  return nil unless status.success?
159
- stdout
159
+ stdout.strip
160
160
  end
161
161
 
162
162
  # Return true or false if the provider is available
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubyipmi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.12.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Corey Osman
@@ -121,6 +121,7 @@ extra_rdoc_files:
121
121
  - LICENSE.txt
122
122
  - README.md
123
123
  files:
124
+ - CHANGELOG.md
124
125
  - CONTRIBUTORS.md
125
126
  - Gemfile
126
127
  - LICENSE.txt