rubyipmi 0.10.0 → 0.11.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 (89) hide show
  1. checksums.yaml +5 -5
  2. data/.document +5 -0
  3. data/.gitignore +50 -0
  4. data/.rspec +1 -0
  5. data/.rubocop.yml +66 -0
  6. data/.travis.yml +13 -0
  7. data/Gemfile +3 -3
  8. data/README.md +9 -3
  9. data/RELEASE_NOTES.md +33 -0
  10. data/Rakefile +15 -42
  11. data/lib/rubyipmi/commands/basecommand.rb +17 -23
  12. data/lib/rubyipmi/commands/mixins/power_mixin.rb +50 -0
  13. data/lib/rubyipmi/commands/mixins/sensors_mixin.rb +54 -0
  14. data/lib/rubyipmi/freeipmi/commands/basecommand.rb +26 -35
  15. data/lib/rubyipmi/freeipmi/commands/bmc.rb +4 -7
  16. data/lib/rubyipmi/freeipmi/commands/bmcconfig.rb +7 -17
  17. data/lib/rubyipmi/freeipmi/commands/bmcdevice.rb +2 -9
  18. data/lib/rubyipmi/freeipmi/commands/bmcinfo.rb +4 -10
  19. data/lib/rubyipmi/freeipmi/commands/chassis.rb +27 -45
  20. data/lib/rubyipmi/freeipmi/commands/chassisconfig.rb +23 -38
  21. data/lib/rubyipmi/freeipmi/commands/fru.rb +23 -42
  22. data/lib/rubyipmi/freeipmi/commands/lan.rb +4 -6
  23. data/lib/rubyipmi/freeipmi/commands/power.rb +8 -51
  24. data/lib/rubyipmi/freeipmi/commands/sensors.rb +10 -67
  25. data/lib/rubyipmi/freeipmi/connection.rb +14 -17
  26. data/lib/rubyipmi/freeipmi/errorcodes.rb +11 -17
  27. data/lib/rubyipmi/ipmitool/commands/basecommand.rb +12 -16
  28. data/lib/rubyipmi/ipmitool/commands/bmc.rb +13 -22
  29. data/lib/rubyipmi/ipmitool/commands/chassis.rb +26 -44
  30. data/lib/rubyipmi/ipmitool/commands/chassisconfig.rb +11 -21
  31. data/lib/rubyipmi/ipmitool/commands/fru.rb +35 -48
  32. data/lib/rubyipmi/ipmitool/commands/lan.rb +25 -28
  33. data/lib/rubyipmi/ipmitool/commands/power.rb +7 -58
  34. data/lib/rubyipmi/ipmitool/commands/sensors.rb +10 -68
  35. data/lib/rubyipmi/ipmitool/connection.rb +10 -19
  36. data/lib/rubyipmi/ipmitool/errorcodes.rb +11 -45
  37. data/lib/rubyipmi/observablehash.rb +1 -2
  38. data/lib/rubyipmi/version.rb +5 -0
  39. data/lib/rubyipmi.rb +23 -28
  40. data/rubyipmi.gemspec +17 -128
  41. metadata +18 -101
  42. data/spec/Vagrantfile +0 -45
  43. data/spec/fixtures/freeipmi/bmc_config.txt +0 -317
  44. data/spec/fixtures/freeipmi/bmc_config_lan_conf.txt +0 -19
  45. data/spec/fixtures/freeipmi/bmc_info.txt +0 -32
  46. data/spec/fixtures/freeipmi/errors.txt +0 -3
  47. data/spec/fixtures/freeipmi/fru.txt +0 -13
  48. data/spec/fixtures/freeipmi/sensors.txt +0 -29
  49. data/spec/fixtures/ipmitool/bmc_info.txt +0 -20
  50. data/spec/fixtures/ipmitool/errors.txt +0 -10
  51. data/spec/fixtures/ipmitool/fru.txt +0 -96
  52. data/spec/fixtures/ipmitool/lan.txt +0 -17
  53. data/spec/fixtures/ipmitool/sensors.txt +0 -105
  54. data/spec/integration/bmc_spec.rb +0 -48
  55. data/spec/integration/chassis_config_spec.rb +0 -38
  56. data/spec/integration/chassis_spec.rb +0 -26
  57. data/spec/integration/connection_spec.rb +0 -45
  58. data/spec/integration/fru_spec.rb +0 -38
  59. data/spec/integration/lan_spec.rb +0 -50
  60. data/spec/integration/power_spec.rb +0 -40
  61. data/spec/integration/rubyipmi_spec.rb +0 -114
  62. data/spec/integration/sensor_spec.rb +0 -43
  63. data/spec/manifests/default.pp +0 -50
  64. data/spec/puppetmodules/archive/LICENSE-2.0.txt +0 -202
  65. data/spec/puppetmodules/archive/Modulefile +0 -8
  66. data/spec/puppetmodules/archive/README.md +0 -40
  67. data/spec/puppetmodules/archive/manifests/download.pp +0 -157
  68. data/spec/puppetmodules/archive/manifests/extract.pp +0 -81
  69. data/spec/puppetmodules/archive/manifests/init.pp +0 -70
  70. data/spec/puppetmodules/archive/manifests/tar-gz.pp +0 -7
  71. data/spec/puppetmodules/archive/manifests/zip.pp +0 -7
  72. data/spec/puppetmodules/archive/metadata.json +0 -26
  73. data/spec/spec_helper.rb +0 -47
  74. data/spec/unit/freeipmi/bmc-info_spec.rb +0 -38
  75. data/spec/unit/freeipmi/bmc_spec.rb +0 -43
  76. data/spec/unit/freeipmi/connection_spec.rb +0 -121
  77. data/spec/unit/freeipmi/errorcodes_spec.rb +0 -28
  78. data/spec/unit/freeipmi/fru_spec.rb +0 -76
  79. data/spec/unit/freeipmi/lan_spec.rb +0 -0
  80. data/spec/unit/freeipmi/sensors_spec.rb +0 -85
  81. data/spec/unit/ipmitool/bmc_spec.rb +0 -77
  82. data/spec/unit/ipmitool/connection_spec.rb +0 -122
  83. data/spec/unit/ipmitool/errorcodes_spec.rb +0 -35
  84. data/spec/unit/ipmitool/fru_spec.rb +0 -77
  85. data/spec/unit/ipmitool/lan_spec.rb +0 -94
  86. data/spec/unit/ipmitool/sensors_spec.rb +0 -96
  87. data/spec/unit/rubyipmi_spec.rb +0 -50
  88. data/spec/vagrant +0 -27
  89. data/spec/vagrant.pub +0 -1
data/lib/rubyipmi.rb CHANGED
@@ -16,16 +16,15 @@
16
16
  # USA
17
17
  #
18
18
 
19
-
20
19
  require 'rubyipmi/ipmitool/connection'
21
20
  require 'rubyipmi/freeipmi/connection'
22
21
  require 'logger'
23
22
 
24
23
  class NullLogger < Logger
25
- def initialize(*args)
24
+ def initialize(*_args)
26
25
  end
27
26
 
28
- def add(*args, &block)
27
+ def add(*_args, &_block)
29
28
  end
30
29
  end
31
30
 
@@ -51,7 +50,7 @@ module Rubyipmi
51
50
  def self.logger
52
51
  # by default the log will be set to info
53
52
  unless @logger
54
- if @log_level and @log_level >= 0
53
+ if @log_level && @log_level >= 0
55
54
  @logger = Logger.new('/tmp/rubyipmi.log')
56
55
  @logger.progname = 'Rubyipmi'
57
56
  @logger.level = @log_level
@@ -73,7 +72,7 @@ module Rubyipmi
73
72
  # If provider is left blank the function will use the first available provider
74
73
  # When the driver is set to auto, rubyipmi will try and figure out which driver to use by common error messages. We will most likely be using
75
74
  # the lan20 driver, but in order to support a wide use case we default to auto.
76
- def self.connect(user, pass, host, provider='any', opts={:driver => 'lan20', :timeout => 'default'})
75
+ def self.connect(user, pass, host, provider = 'any', opts = {:driver => 'lan20', :timeout => 'default'})
77
76
  # use this variable to reduce cmd calls
78
77
  installed = false
79
78
 
@@ -88,16 +87,16 @@ module Rubyipmi
88
87
  # allow the user to specify an options hash instead of the provider
89
88
  # in the future I would stop using the provider and use the opts hash instead to get the provider
90
89
  # This allows us to be a little more flexible if the user is doesn't supply us what we need.
91
- if provider.is_a?(Hash)
90
+ if provider.kind_of?(Hash)
92
91
  opts = provider
93
92
  provider = opts[:provider] ||= 'any'
94
93
  end
95
94
 
96
95
  # Verify options just in case user passed in a incomplete hash
97
- opts[:driver] ||= 'lan20'
96
+ opts[:driver] ||= 'lan20'
98
97
  opts[:timeout] ||= 'default'
99
98
 
100
- if opts[:privilege] and not supported_privilege_type?(opts[:privilege])
99
+ if opts[:privilege] && !supported_privilege_type?(opts[:privilege])
101
100
  logger.error("Invalid privilege type :#{opts[:privilege]}, must be one of: #{PRIV_TYPES.join("\n")}") if logger
102
101
  raise "Invalid privilege type :#{opts[:privilege]}, must be one of: #{PRIV_TYPES.join("\n")}"
103
102
  end
@@ -124,11 +123,11 @@ module Rubyipmi
124
123
  end
125
124
 
126
125
  # If the provider is available create a connection object
127
- if installed or is_provider_installed?(provider)
126
+ if installed || is_provider_installed?(provider)
128
127
  if provider == "freeipmi"
129
128
  Rubyipmi::Freeipmi::Connection.new(user, pass, host, opts)
130
129
  elsif provider == "ipmitool"
131
- Rubyipmi::Ipmitool::Connection.new(user,pass,host, opts)
130
+ Rubyipmi::Ipmitool::Connection.new(user, pass, host, opts)
132
131
  else
133
132
  logger.error("Incorrect provider given, must use one of #{valid_providers.join(', ')}") if logger
134
133
  raise "Incorrect provider given, must use one of #{valid_providers.join(', ')}"
@@ -142,31 +141,29 @@ module Rubyipmi
142
141
 
143
142
  # returns boolean true if privilege type is valid
144
143
  def self.supported_privilege_type?(type)
145
- PRIV_TYPES.include?(type)
144
+ PRIV_TYPES.include?(type)
146
145
  end
147
146
 
148
147
  # method used to find the command which also makes it easier to mock with
149
148
  def self.locate_command(commandname)
150
149
  location = `which #{commandname}`.strip
151
- if not $?.success?
152
- location = nil
153
- end
150
+ location = nil unless $?.success?
154
151
  location
155
152
  end
156
153
 
157
154
  # Return true or false if the provider is available
158
155
  def self.is_provider_installed?(provider)
159
156
  case provider
160
- when "freeipmi"
161
- cmdpath = locate_command('ipmipower')
162
- when "ipmitool"
163
- cmdpath = locate_command('ipmitool')
164
- else
165
- logger.error("Invalid BMC provider type #{provider}") if logger
166
- false
157
+ when "freeipmi"
158
+ cmdpath = locate_command('ipmipower')
159
+ when "ipmitool"
160
+ cmdpath = locate_command('ipmitool')
161
+ else
162
+ logger.error("Invalid BMC provider type #{provider}") if logger
163
+ false
167
164
  end
168
165
  # return false if command was not found
169
- return ! cmdpath.nil?
166
+ !cmdpath.nil?
170
167
  end
171
168
 
172
169
  def self.providers
@@ -181,15 +178,13 @@ module Rubyipmi
181
178
  def self.providers_installed
182
179
  available = []
183
180
  providers.each do |prov|
184
- if is_provider_installed?(prov)
185
- available << prov
186
- end
181
+ available << prov if is_provider_installed?(prov)
187
182
  end
188
- return available
183
+ available
189
184
  end
190
185
 
191
186
  # gets data from the bmc device and puts in a hash for diagnostics
192
- def self.get_diag(user, pass, host, opts={:driver => 'lan20', :timeout => 'default'})
187
+ def self.get_diag(user, pass, host, opts = {:driver => 'lan20', :timeout => 'default'})
193
188
  data = {}
194
189
  if Rubyipmi.is_provider_installed?('freeipmi')
195
190
  freeconn = Rubyipmi.connect(user, pass, host, 'freeipmi', opts)
@@ -205,7 +200,7 @@ module Rubyipmi
205
200
  data[:ipmitool] = ipmiconn.get_diag
206
201
  end
207
202
  end
208
- File.open('/tmp/rubyipmi_diag_data.txt', 'w') {|f| f.write(data)}
203
+ File.open('/tmp/rubyipmi_diag_data.txt', 'w') { |f| f.write(data) }
209
204
  puts "Created file /tmp/rubyipmi_diag_data.txt"
210
205
  end
211
206
  end
data/rubyipmi.gemspec CHANGED
@@ -1,145 +1,34 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
5
- # stub: rubyipmi 0.10.0 ruby lib
1
+ lib = File.expand_path('lib', __dir__)
2
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
+ require 'rubyipmi/version'
6
4
 
7
5
  Gem::Specification.new do |s|
8
6
  s.name = "rubyipmi"
9
- s.version = "0.10.0"
7
+ s.version = Rubyipmi::VERSION
10
8
 
11
9
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
10
  s.require_paths = ["lib"]
13
11
  s.authors = ["Corey Osman"]
14
- s.date = "2015-04-10"
15
- s.description = "Provides a library for controlling IPMI devices using pure ruby code"
12
+ s.date = "2021-09-29"
13
+ s.description = "Controls IPMI devices via command line wrapper for ipmitool and freeipmi"
16
14
  s.email = "corey@logicminds.biz"
17
15
  s.extra_rdoc_files = [
18
16
  "LICENSE.txt",
19
17
  "README.md"
20
18
  ]
21
- s.files = [
22
- "Gemfile",
23
- "LICENSE.txt",
24
- "README.md",
25
- "RELEASE_NOTES.md",
26
- "Rakefile",
27
- "VERSION",
28
- "lib/rubyipmi.rb",
29
- "lib/rubyipmi/commands/basecommand.rb",
30
- "lib/rubyipmi/freeipmi/commands/basecommand.rb",
31
- "lib/rubyipmi/freeipmi/commands/bmc.rb",
32
- "lib/rubyipmi/freeipmi/commands/bmcconfig.rb",
33
- "lib/rubyipmi/freeipmi/commands/bmcdevice.rb",
34
- "lib/rubyipmi/freeipmi/commands/bmcinfo.rb",
35
- "lib/rubyipmi/freeipmi/commands/chassis.rb",
36
- "lib/rubyipmi/freeipmi/commands/chassisconfig.rb",
37
- "lib/rubyipmi/freeipmi/commands/fru.rb",
38
- "lib/rubyipmi/freeipmi/commands/lan.rb",
39
- "lib/rubyipmi/freeipmi/commands/power.rb",
40
- "lib/rubyipmi/freeipmi/commands/sensors.rb",
41
- "lib/rubyipmi/freeipmi/connection.rb",
42
- "lib/rubyipmi/freeipmi/errorcodes.rb",
43
- "lib/rubyipmi/ipmitool/commands/basecommand.rb",
44
- "lib/rubyipmi/ipmitool/commands/bmc.rb",
45
- "lib/rubyipmi/ipmitool/commands/chassis.rb",
46
- "lib/rubyipmi/ipmitool/commands/chassisconfig.rb",
47
- "lib/rubyipmi/ipmitool/commands/fru.rb",
48
- "lib/rubyipmi/ipmitool/commands/lan.rb",
49
- "lib/rubyipmi/ipmitool/commands/power.rb",
50
- "lib/rubyipmi/ipmitool/commands/sensors.rb",
51
- "lib/rubyipmi/ipmitool/connection.rb",
52
- "lib/rubyipmi/ipmitool/errorcodes.rb",
53
- "lib/rubyipmi/observablehash.rb",
54
- "rubyipmi.gemspec",
55
- "spec/Vagrantfile",
56
- "spec/fixtures/freeipmi/bmc_config.txt",
57
- "spec/fixtures/freeipmi/bmc_config_lan_conf.txt",
58
- "spec/fixtures/freeipmi/bmc_info.txt",
59
- "spec/fixtures/freeipmi/errors.txt",
60
- "spec/fixtures/freeipmi/fru.txt",
61
- "spec/fixtures/freeipmi/sensors.txt",
62
- "spec/fixtures/ipmitool/bmc_info.txt",
63
- "spec/fixtures/ipmitool/errors.txt",
64
- "spec/fixtures/ipmitool/fru.txt",
65
- "spec/fixtures/ipmitool/lan.txt",
66
- "spec/fixtures/ipmitool/sensors.txt",
67
- "spec/integration/bmc_spec.rb",
68
- "spec/integration/chassis_config_spec.rb",
69
- "spec/integration/chassis_spec.rb",
70
- "spec/integration/connection_spec.rb",
71
- "spec/integration/fru_spec.rb",
72
- "spec/integration/lan_spec.rb",
73
- "spec/integration/power_spec.rb",
74
- "spec/integration/rubyipmi_spec.rb",
75
- "spec/integration/sensor_spec.rb",
76
- "spec/manifests/default.pp",
77
- "spec/puppetmodules/archive/LICENSE-2.0.txt",
78
- "spec/puppetmodules/archive/Modulefile",
79
- "spec/puppetmodules/archive/README.md",
80
- "spec/puppetmodules/archive/manifests/download.pp",
81
- "spec/puppetmodules/archive/manifests/extract.pp",
82
- "spec/puppetmodules/archive/manifests/init.pp",
83
- "spec/puppetmodules/archive/manifests/tar-gz.pp",
84
- "spec/puppetmodules/archive/manifests/zip.pp",
85
- "spec/puppetmodules/archive/metadata.json",
86
- "spec/spec_helper.rb",
87
- "spec/unit/freeipmi/bmc-info_spec.rb",
88
- "spec/unit/freeipmi/bmc_spec.rb",
89
- "spec/unit/freeipmi/connection_spec.rb",
90
- "spec/unit/freeipmi/errorcodes_spec.rb",
91
- "spec/unit/freeipmi/fru_spec.rb",
92
- "spec/unit/freeipmi/lan_spec.rb",
93
- "spec/unit/freeipmi/sensors_spec.rb",
94
- "spec/unit/ipmitool/bmc_spec.rb",
95
- "spec/unit/ipmitool/connection_spec.rb",
96
- "spec/unit/ipmitool/errorcodes_spec.rb",
97
- "spec/unit/ipmitool/fru_spec.rb",
98
- "spec/unit/ipmitool/lan_spec.rb",
99
- "spec/unit/ipmitool/sensors_spec.rb",
100
- "spec/unit/rubyipmi_spec.rb",
101
- "spec/vagrant",
102
- "spec/vagrant.pub"
103
- ]
104
- s.homepage = "http://github.com/logicminds/rubyipmi"
19
+ s.files = `git ls-files -z`.split("\x0").reject do |f|
20
+ f.match(/^(test|spec|features)/) || f.match(/^*.tar\.gz/)
21
+ end
22
+ s.homepage = "https://github.com/logicminds/rubyipmi"
105
23
  s.licenses = ["LGPLv2.1"]
106
24
  s.rubygems_version = "2.4.5"
107
25
  s.summary = "A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi"
108
-
109
- if s.respond_to? :specification_version then
110
- s.specification_version = 4
111
-
112
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
113
- s.add_development_dependency(%q<rspec>, ["~> 3.1"])
114
- s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
115
- s.add_development_dependency(%q<bundler>, [">= 1.1.5"])
116
- s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
117
- s.add_development_dependency(%q<highline>, [">= 0"])
118
- s.add_development_dependency(%q<rake>, [">= 0"])
119
- s.add_development_dependency(%q<coveralls>, [">= 0"])
120
- s.add_development_dependency(%q<pry>, [">= 0"])
121
- s.add_development_dependency(%q<pry-rescue>, [">= 0"])
122
- else
123
- s.add_dependency(%q<rspec>, ["~> 3.1"])
124
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
125
- s.add_dependency(%q<bundler>, [">= 1.1.5"])
126
- s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
127
- s.add_dependency(%q<highline>, [">= 0"])
128
- s.add_dependency(%q<rake>, [">= 0"])
129
- s.add_dependency(%q<coveralls>, [">= 0"])
130
- s.add_dependency(%q<pry>, [">= 0"])
131
- s.add_dependency(%q<pry-rescue>, [">= 0"])
132
- end
133
- else
134
- s.add_dependency(%q<rspec>, ["~> 3.1"])
135
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
136
- s.add_dependency(%q<bundler>, [">= 1.1.5"])
137
- s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
138
- s.add_dependency(%q<highline>, [">= 0"])
139
- s.add_dependency(%q<rake>, [">= 0"])
140
- s.add_dependency(%q<coveralls>, [">= 0"])
141
- s.add_dependency(%q<pry>, [">= 0"])
142
- s.add_dependency(%q<pry-rescue>, [">= 0"])
143
- end
26
+ s.require_paths = ['lib']
27
+ s.add_development_dependency(%q<rspec>, ["~> 3.1"])
28
+ s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
29
+ s.add_development_dependency(%q<bundler>, [">= 1.1.5"])
30
+ s.add_development_dependency(%q<highline>, [">= 0"])
31
+ s.add_development_dependency(%q<rake>, [">= 0"])
32
+ s.add_dependency(%q<highline>, [">= 0"])
144
33
  end
145
34
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubyipmi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Corey Osman
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-10 00:00:00.000000000 Z
11
+ date: 2021-09-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -52,20 +52,6 @@ dependencies:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: 1.1.5
55
- - !ruby/object:Gem::Dependency
56
- name: jeweler
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: 2.0.1
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: 2.0.1
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: highline
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -95,48 +81,20 @@ dependencies:
95
81
  - !ruby/object:Gem::Version
96
82
  version: '0'
97
83
  - !ruby/object:Gem::Dependency
98
- name: coveralls
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: pry
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: pry-rescue
84
+ name: highline
127
85
  requirement: !ruby/object:Gem::Requirement
128
86
  requirements:
129
87
  - - ">="
130
88
  - !ruby/object:Gem::Version
131
89
  version: '0'
132
- type: :development
90
+ type: :runtime
133
91
  prerelease: false
134
92
  version_requirements: !ruby/object:Gem::Requirement
135
93
  requirements:
136
94
  - - ">="
137
95
  - !ruby/object:Gem::Version
138
96
  version: '0'
139
- description: Provides a library for controlling IPMI devices using pure ruby code
97
+ description: Controls IPMI devices via command line wrapper for ipmitool and freeipmi
140
98
  email: corey@logicminds.biz
141
99
  executables: []
142
100
  extensions: []
@@ -144,6 +102,11 @@ extra_rdoc_files:
144
102
  - LICENSE.txt
145
103
  - README.md
146
104
  files:
105
+ - ".document"
106
+ - ".gitignore"
107
+ - ".rspec"
108
+ - ".rubocop.yml"
109
+ - ".travis.yml"
147
110
  - Gemfile
148
111
  - LICENSE.txt
149
112
  - README.md
@@ -152,6 +115,8 @@ files:
152
115
  - VERSION
153
116
  - lib/rubyipmi.rb
154
117
  - lib/rubyipmi/commands/basecommand.rb
118
+ - lib/rubyipmi/commands/mixins/power_mixin.rb
119
+ - lib/rubyipmi/commands/mixins/sensors_mixin.rb
155
120
  - lib/rubyipmi/freeipmi/commands/basecommand.rb
156
121
  - lib/rubyipmi/freeipmi/commands/bmc.rb
157
122
  - lib/rubyipmi/freeipmi/commands/bmcconfig.rb
@@ -176,60 +141,13 @@ files:
176
141
  - lib/rubyipmi/ipmitool/connection.rb
177
142
  - lib/rubyipmi/ipmitool/errorcodes.rb
178
143
  - lib/rubyipmi/observablehash.rb
144
+ - lib/rubyipmi/version.rb
179
145
  - rubyipmi.gemspec
180
- - spec/Vagrantfile
181
- - spec/fixtures/freeipmi/bmc_config.txt
182
- - spec/fixtures/freeipmi/bmc_config_lan_conf.txt
183
- - spec/fixtures/freeipmi/bmc_info.txt
184
- - spec/fixtures/freeipmi/errors.txt
185
- - spec/fixtures/freeipmi/fru.txt
186
- - spec/fixtures/freeipmi/sensors.txt
187
- - spec/fixtures/ipmitool/bmc_info.txt
188
- - spec/fixtures/ipmitool/errors.txt
189
- - spec/fixtures/ipmitool/fru.txt
190
- - spec/fixtures/ipmitool/lan.txt
191
- - spec/fixtures/ipmitool/sensors.txt
192
- - spec/integration/bmc_spec.rb
193
- - spec/integration/chassis_config_spec.rb
194
- - spec/integration/chassis_spec.rb
195
- - spec/integration/connection_spec.rb
196
- - spec/integration/fru_spec.rb
197
- - spec/integration/lan_spec.rb
198
- - spec/integration/power_spec.rb
199
- - spec/integration/rubyipmi_spec.rb
200
- - spec/integration/sensor_spec.rb
201
- - spec/manifests/default.pp
202
- - spec/puppetmodules/archive/LICENSE-2.0.txt
203
- - spec/puppetmodules/archive/Modulefile
204
- - spec/puppetmodules/archive/README.md
205
- - spec/puppetmodules/archive/manifests/download.pp
206
- - spec/puppetmodules/archive/manifests/extract.pp
207
- - spec/puppetmodules/archive/manifests/init.pp
208
- - spec/puppetmodules/archive/manifests/tar-gz.pp
209
- - spec/puppetmodules/archive/manifests/zip.pp
210
- - spec/puppetmodules/archive/metadata.json
211
- - spec/spec_helper.rb
212
- - spec/unit/freeipmi/bmc-info_spec.rb
213
- - spec/unit/freeipmi/bmc_spec.rb
214
- - spec/unit/freeipmi/connection_spec.rb
215
- - spec/unit/freeipmi/errorcodes_spec.rb
216
- - spec/unit/freeipmi/fru_spec.rb
217
- - spec/unit/freeipmi/lan_spec.rb
218
- - spec/unit/freeipmi/sensors_spec.rb
219
- - spec/unit/ipmitool/bmc_spec.rb
220
- - spec/unit/ipmitool/connection_spec.rb
221
- - spec/unit/ipmitool/errorcodes_spec.rb
222
- - spec/unit/ipmitool/fru_spec.rb
223
- - spec/unit/ipmitool/lan_spec.rb
224
- - spec/unit/ipmitool/sensors_spec.rb
225
- - spec/unit/rubyipmi_spec.rb
226
- - spec/vagrant
227
- - spec/vagrant.pub
228
- homepage: http://github.com/logicminds/rubyipmi
146
+ homepage: https://github.com/logicminds/rubyipmi
229
147
  licenses:
230
148
  - LGPLv2.1
231
149
  metadata: {}
232
- post_install_message:
150
+ post_install_message:
233
151
  rdoc_options: []
234
152
  require_paths:
235
153
  - lib
@@ -244,9 +162,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
244
162
  - !ruby/object:Gem::Version
245
163
  version: '0'
246
164
  requirements: []
247
- rubyforge_project:
248
- rubygems_version: 2.4.5
249
- signing_key:
165
+ rubygems_version: 3.0.3
166
+ signing_key:
250
167
  specification_version: 4
251
168
  summary: A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi
252
169
  test_files: []
data/spec/Vagrantfile DELETED
@@ -1,45 +0,0 @@
1
- # -*- mode: ruby -*-
2
- # vi: set ft=ruby :
3
-
4
- # Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
5
- VAGRANTFILE_API_VERSION = "2"
6
-
7
- Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
8
-
9
- config.vm.box = "centos6.4"
10
- config.vm.box_url = "http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.4-x86_64-v20130427.box"
11
- config.ssh.private_key_path = "vagrant"
12
- config.vm.provider :virtualbox do |vb, override|
13
- #vb.gui = true
14
- end
15
- config.vm.provider :vmware_fusion do |vf, override|
16
- override.vm.box_url = "https://dl.dropbox.com/u/5721940/vagrant-boxes/vagrant-centos-6.4-x86_64-vmware_fusion.box"
17
- #vf.gui = true
18
- end
19
-
20
- # Boot with a GUI so you can see the screen. (Default is headless)
21
- #config.vm.boot_mode = :gui
22
-
23
- # Enable provisioning with Puppet stand alone. Puppet manifests
24
- # are contained in a directory path relative to this Vagrantfile.
25
- # You will need to create the manifests directory and a manifest in
26
- # the file centos.pp in the manifests_path directory.
27
- #
28
- config.vm.synced_folder "../", "/rubyipmi"
29
- (1..1).each do |i|
30
- vmname = "testnode#{i}"
31
- config.vm.define vmname.to_sym do |web_conf|
32
- web_conf.vm.hostname = vmname
33
- web_conf.vm.provision :shell,
34
- :inline => "hostname #{vmname}.company.corp"
35
- web_conf.vm.provision :puppet do |puppet|
36
- puppet.module_path = "puppetmodules"
37
- puppet.manifests_path = "manifests"
38
- puppet.manifest_file = "default.pp"
39
- puppet.facter = { }
40
- end
41
- end
42
- end
43
- end
44
-
45
-