rubyipmi 0.9.2 → 0.11.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (85) hide show
  1. checksums.yaml +5 -5
  2. data/Gemfile +3 -3
  3. data/README.md +36 -23
  4. data/RELEASE_NOTES.md +48 -0
  5. data/Rakefile +15 -42
  6. data/VERSION +1 -1
  7. data/lib/rubyipmi/commands/basecommand.rb +17 -23
  8. data/lib/rubyipmi/commands/mixins/power_mixin.rb +50 -0
  9. data/lib/rubyipmi/commands/mixins/sensors_mixin.rb +54 -0
  10. data/lib/rubyipmi/freeipmi/commands/basecommand.rb +26 -35
  11. data/lib/rubyipmi/freeipmi/commands/bmc.rb +4 -7
  12. data/lib/rubyipmi/freeipmi/commands/bmcconfig.rb +7 -17
  13. data/lib/rubyipmi/freeipmi/commands/bmcdevice.rb +2 -9
  14. data/lib/rubyipmi/freeipmi/commands/bmcinfo.rb +4 -10
  15. data/lib/rubyipmi/freeipmi/commands/chassis.rb +27 -45
  16. data/lib/rubyipmi/freeipmi/commands/chassisconfig.rb +23 -38
  17. data/lib/rubyipmi/freeipmi/commands/fru.rb +23 -42
  18. data/lib/rubyipmi/freeipmi/commands/lan.rb +4 -6
  19. data/lib/rubyipmi/freeipmi/commands/power.rb +8 -51
  20. data/lib/rubyipmi/freeipmi/commands/sensors.rb +10 -67
  21. data/lib/rubyipmi/freeipmi/connection.rb +14 -17
  22. data/lib/rubyipmi/freeipmi/errorcodes.rb +11 -17
  23. data/lib/rubyipmi/ipmitool/commands/basecommand.rb +12 -16
  24. data/lib/rubyipmi/ipmitool/commands/bmc.rb +13 -22
  25. data/lib/rubyipmi/ipmitool/commands/chassis.rb +26 -44
  26. data/lib/rubyipmi/ipmitool/commands/chassisconfig.rb +11 -21
  27. data/lib/rubyipmi/ipmitool/commands/fru.rb +35 -48
  28. data/lib/rubyipmi/ipmitool/commands/lan.rb +25 -28
  29. data/lib/rubyipmi/ipmitool/commands/power.rb +7 -58
  30. data/lib/rubyipmi/ipmitool/commands/sensors.rb +10 -68
  31. data/lib/rubyipmi/ipmitool/connection.rb +10 -19
  32. data/lib/rubyipmi/ipmitool/errorcodes.rb +11 -45
  33. data/lib/rubyipmi/observablehash.rb +1 -2
  34. data/lib/rubyipmi/version.rb +5 -0
  35. data/lib/rubyipmi.rb +31 -28
  36. data/rubyipmi.gemspec +17 -128
  37. metadata +13 -101
  38. data/spec/Vagrantfile +0 -45
  39. data/spec/fixtures/freeipmi/bmc_config.txt +0 -317
  40. data/spec/fixtures/freeipmi/bmc_config_lan_conf.txt +0 -19
  41. data/spec/fixtures/freeipmi/bmc_info.txt +0 -32
  42. data/spec/fixtures/freeipmi/errors.txt +0 -3
  43. data/spec/fixtures/freeipmi/fru.txt +0 -13
  44. data/spec/fixtures/freeipmi/sensors.txt +0 -29
  45. data/spec/fixtures/ipmitool/bmc_info.txt +0 -20
  46. data/spec/fixtures/ipmitool/errors.txt +0 -10
  47. data/spec/fixtures/ipmitool/fru.txt +0 -96
  48. data/spec/fixtures/ipmitool/lan.txt +0 -17
  49. data/spec/fixtures/ipmitool/sensors.txt +0 -105
  50. data/spec/integration/bmc_spec.rb +0 -48
  51. data/spec/integration/chassis_config_spec.rb +0 -38
  52. data/spec/integration/chassis_spec.rb +0 -26
  53. data/spec/integration/connection_spec.rb +0 -45
  54. data/spec/integration/fru_spec.rb +0 -38
  55. data/spec/integration/lan_spec.rb +0 -50
  56. data/spec/integration/power_spec.rb +0 -40
  57. data/spec/integration/rubyipmi_spec.rb +0 -114
  58. data/spec/integration/sensor_spec.rb +0 -43
  59. data/spec/manifests/default.pp +0 -50
  60. data/spec/puppetmodules/archive/LICENSE-2.0.txt +0 -202
  61. data/spec/puppetmodules/archive/Modulefile +0 -8
  62. data/spec/puppetmodules/archive/README.md +0 -40
  63. data/spec/puppetmodules/archive/manifests/download.pp +0 -157
  64. data/spec/puppetmodules/archive/manifests/extract.pp +0 -81
  65. data/spec/puppetmodules/archive/manifests/init.pp +0 -70
  66. data/spec/puppetmodules/archive/manifests/tar-gz.pp +0 -7
  67. data/spec/puppetmodules/archive/manifests/zip.pp +0 -7
  68. data/spec/puppetmodules/archive/metadata.json +0 -26
  69. data/spec/spec_helper.rb +0 -47
  70. data/spec/unit/freeipmi/bmc-info_spec.rb +0 -38
  71. data/spec/unit/freeipmi/bmc_spec.rb +0 -43
  72. data/spec/unit/freeipmi/connection_spec.rb +0 -120
  73. data/spec/unit/freeipmi/errorcodes_spec.rb +0 -28
  74. data/spec/unit/freeipmi/fru_spec.rb +0 -76
  75. data/spec/unit/freeipmi/lan_spec.rb +0 -0
  76. data/spec/unit/freeipmi/sensors_spec.rb +0 -85
  77. data/spec/unit/ipmitool/bmc_spec.rb +0 -77
  78. data/spec/unit/ipmitool/connection_spec.rb +0 -121
  79. data/spec/unit/ipmitool/errorcodes_spec.rb +0 -35
  80. data/spec/unit/ipmitool/fru_spec.rb +0 -77
  81. data/spec/unit/ipmitool/lan_spec.rb +0 -94
  82. data/spec/unit/ipmitool/sensors_spec.rb +0 -96
  83. data/spec/unit/rubyipmi_spec.rb +0 -32
  84. data/spec/vagrant +0 -27
  85. 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,23 +72,31 @@ 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 => 'auto', :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
 
79
+ # if the user supplied nil, we want to fix this automatically
80
+ opts = {:driver => 'lan20', :timeout => 'default'} if opts.nil?
81
+
82
+ # convert all keys to symbols for opts, we can't assume the user will use symbols
83
+ opts.keys.each do |key|
84
+ opts[(key.to_sym rescue key) || key] = opts.delete(key)
85
+ end
86
+
80
87
  # allow the user to specify an options hash instead of the provider
81
88
  # in the future I would stop using the provider and use the opts hash instead to get the provider
82
89
  # This allows us to be a little more flexible if the user is doesn't supply us what we need.
83
- if provider.is_a?(Hash)
90
+ if provider.kind_of?(Hash)
84
91
  opts = provider
85
92
  provider = opts[:provider] ||= 'any'
86
93
  end
87
94
 
88
95
  # Verify options just in case user passed in a incomplete hash
89
- opts[:driver] ||= 'auto'
96
+ opts[:driver] ||= 'lan20'
90
97
  opts[:timeout] ||= 'default'
91
98
 
92
- if opts[:privilege] and not supported_privilege_type?(opts[:privilege])
99
+ if opts[:privilege] && !supported_privilege_type?(opts[:privilege])
93
100
  logger.error("Invalid privilege type :#{opts[:privilege]}, must be one of: #{PRIV_TYPES.join("\n")}") if logger
94
101
  raise "Invalid privilege type :#{opts[:privilege]}, must be one of: #{PRIV_TYPES.join("\n")}"
95
102
  end
@@ -116,11 +123,11 @@ module Rubyipmi
116
123
  end
117
124
 
118
125
  # If the provider is available create a connection object
119
- if installed or is_provider_installed?(provider)
126
+ if installed || is_provider_installed?(provider)
120
127
  if provider == "freeipmi"
121
128
  Rubyipmi::Freeipmi::Connection.new(user, pass, host, opts)
122
129
  elsif provider == "ipmitool"
123
- Rubyipmi::Ipmitool::Connection.new(user,pass,host, opts)
130
+ Rubyipmi::Ipmitool::Connection.new(user, pass, host, opts)
124
131
  else
125
132
  logger.error("Incorrect provider given, must use one of #{valid_providers.join(', ')}") if logger
126
133
  raise "Incorrect provider given, must use one of #{valid_providers.join(', ')}"
@@ -134,31 +141,29 @@ module Rubyipmi
134
141
 
135
142
  # returns boolean true if privilege type is valid
136
143
  def self.supported_privilege_type?(type)
137
- PRIV_TYPES.include?(type)
144
+ PRIV_TYPES.include?(type)
138
145
  end
139
146
 
140
147
  # method used to find the command which also makes it easier to mock with
141
148
  def self.locate_command(commandname)
142
149
  location = `which #{commandname}`.strip
143
- if not $?.success?
144
- location = nil
145
- end
150
+ location = nil unless $?.success?
146
151
  location
147
152
  end
148
153
 
149
154
  # Return true or false if the provider is available
150
155
  def self.is_provider_installed?(provider)
151
156
  case provider
152
- when "freeipmi"
153
- cmdpath = locate_command('ipmipower')
154
- when "ipmitool"
155
- cmdpath = locate_command('ipmitool')
156
- else
157
- logger.error("Invalid BMC provider type #{provider}") if logger
158
- 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
159
164
  end
160
165
  # return false if command was not found
161
- return ! cmdpath.nil?
166
+ !cmdpath.nil?
162
167
  end
163
168
 
164
169
  def self.providers
@@ -173,15 +178,13 @@ module Rubyipmi
173
178
  def self.providers_installed
174
179
  available = []
175
180
  providers.each do |prov|
176
- if is_provider_installed?(prov)
177
- available << prov
178
- end
181
+ available << prov if is_provider_installed?(prov)
179
182
  end
180
- return available
183
+ available
181
184
  end
182
185
 
183
186
  # gets data from the bmc device and puts in a hash for diagnostics
184
- def self.get_diag(user, pass, host, opts={:driver => 'auto', :timeout => 'default'})
187
+ def self.get_diag(user, pass, host, opts = {:driver => 'lan20', :timeout => 'default'})
185
188
  data = {}
186
189
  if Rubyipmi.is_provider_installed?('freeipmi')
187
190
  freeconn = Rubyipmi.connect(user, pass, host, 'freeipmi', opts)
@@ -197,7 +200,7 @@ module Rubyipmi
197
200
  data[:ipmitool] = ipmiconn.get_diag
198
201
  end
199
202
  end
200
- 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) }
201
204
  puts "Created file /tmp/rubyipmi_diag_data.txt"
202
205
  end
203
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.9.2 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.9.2"
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-03-19"
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.9.2
4
+ version: 0.11.1
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-03-19 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: []
@@ -152,6 +110,8 @@ files:
152
110
  - VERSION
153
111
  - lib/rubyipmi.rb
154
112
  - lib/rubyipmi/commands/basecommand.rb
113
+ - lib/rubyipmi/commands/mixins/power_mixin.rb
114
+ - lib/rubyipmi/commands/mixins/sensors_mixin.rb
155
115
  - lib/rubyipmi/freeipmi/commands/basecommand.rb
156
116
  - lib/rubyipmi/freeipmi/commands/bmc.rb
157
117
  - lib/rubyipmi/freeipmi/commands/bmcconfig.rb
@@ -176,60 +136,13 @@ files:
176
136
  - lib/rubyipmi/ipmitool/connection.rb
177
137
  - lib/rubyipmi/ipmitool/errorcodes.rb
178
138
  - lib/rubyipmi/observablehash.rb
139
+ - lib/rubyipmi/version.rb
179
140
  - 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
141
+ homepage: https://github.com/logicminds/rubyipmi
229
142
  licenses:
230
143
  - LGPLv2.1
231
144
  metadata: {}
232
- post_install_message:
145
+ post_install_message:
233
146
  rdoc_options: []
234
147
  require_paths:
235
148
  - lib
@@ -244,9 +157,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
244
157
  - !ruby/object:Gem::Version
245
158
  version: '0'
246
159
  requirements: []
247
- rubyforge_project:
248
- rubygems_version: 2.4.5
249
- signing_key:
160
+ rubygems_version: 3.0.3
161
+ signing_key:
250
162
  specification_version: 4
251
163
  summary: A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi
252
164
  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
-