rubyipmi 0.3.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.
- data/.document +5 -0
- data/.rspec +1 -0
- data/Gemfile +14 -0
- data/Gemfile.lock +33 -0
- data/LICENSE.txt +20 -0
- data/README.md +267 -0
- data/README.rdoc +18 -0
- data/Rakefile +49 -0
- data/VERSION +1 -0
- data/lib/rubyipmi.rb +80 -0
- data/lib/rubyipmi/commands/basecommand.rb +171 -0
- data/lib/rubyipmi/freeipmi/commands/basecommand.rb +60 -0
- data/lib/rubyipmi/freeipmi/commands/bmc.rb +37 -0
- data/lib/rubyipmi/freeipmi/commands/bmcconfig.rb +57 -0
- data/lib/rubyipmi/freeipmi/commands/bmcinfo.rb +76 -0
- data/lib/rubyipmi/freeipmi/commands/chassis.rb +123 -0
- data/lib/rubyipmi/freeipmi/commands/chassisconfig.rb +100 -0
- data/lib/rubyipmi/freeipmi/commands/lan.rb +111 -0
- data/lib/rubyipmi/freeipmi/commands/power.rb +72 -0
- data/lib/rubyipmi/freeipmi/connection.rb +43 -0
- data/lib/rubyipmi/freeipmi/errorcodes.rb +15 -0
- data/lib/rubyipmi/ipmitool/commands/basecommand.rb +60 -0
- data/lib/rubyipmi/ipmitool/commands/bmc.rb +95 -0
- data/lib/rubyipmi/ipmitool/commands/chassis.rb +106 -0
- data/lib/rubyipmi/ipmitool/commands/chassisconfig.rb +52 -0
- data/lib/rubyipmi/ipmitool/commands/lan.rb +162 -0
- data/lib/rubyipmi/ipmitool/commands/power.rb +74 -0
- data/lib/rubyipmi/ipmitool/connection.rb +46 -0
- data/lib/rubyipmi/ipmitool/errorcodes.rb +18 -0
- data/lib/rubyipmi/observablehash.rb +20 -0
- data/rubyipmi.gemspec +91 -0
- data/spec/bmc_spec.rb +35 -0
- data/spec/chassis_config_spec.rb +38 -0
- data/spec/chassis_spec.rb +24 -0
- data/spec/connection_spec.rb +31 -0
- data/spec/lan_spec.rb +61 -0
- data/spec/power_spec.rb +40 -0
- data/spec/rubyipmi_spec.rb +59 -0
- data/spec/spec_helper.rb +12 -0
- metadata +181 -0
@@ -0,0 +1,20 @@
|
|
1
|
+
require "observer"
|
2
|
+
|
3
|
+
module Rubyipmi
|
4
|
+
class ObservableHash < Hash
|
5
|
+
include Observable
|
6
|
+
|
7
|
+
# this method will merge the hash and then notify all observers, if any
|
8
|
+
def merge_notify!(newhash)
|
9
|
+
merge!(newhash)
|
10
|
+
changed
|
11
|
+
notify_observers(self)
|
12
|
+
end
|
13
|
+
|
14
|
+
def delete_notify(del)
|
15
|
+
delete(del)
|
16
|
+
notify_observers(self)
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
data/rubyipmi.gemspec
ADDED
@@ -0,0 +1,91 @@
|
|
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
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = "rubyipmi"
|
8
|
+
s.version = "0.3.0"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Corey Osman"]
|
12
|
+
s.date = "2012-08-14"
|
13
|
+
s.description = "A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi"
|
14
|
+
s.email = "corey@logicminds.biz"
|
15
|
+
s.extra_rdoc_files = [
|
16
|
+
"LICENSE.txt",
|
17
|
+
"README.md",
|
18
|
+
"README.rdoc"
|
19
|
+
]
|
20
|
+
s.files = [
|
21
|
+
".document",
|
22
|
+
".rspec",
|
23
|
+
"Gemfile",
|
24
|
+
"Gemfile.lock",
|
25
|
+
"LICENSE.txt",
|
26
|
+
"README.md",
|
27
|
+
"README.rdoc",
|
28
|
+
"Rakefile",
|
29
|
+
"VERSION",
|
30
|
+
"lib/rubyipmi.rb",
|
31
|
+
"lib/rubyipmi/commands/basecommand.rb",
|
32
|
+
"lib/rubyipmi/freeipmi/commands/basecommand.rb",
|
33
|
+
"lib/rubyipmi/freeipmi/commands/bmc.rb",
|
34
|
+
"lib/rubyipmi/freeipmi/commands/bmcconfig.rb",
|
35
|
+
"lib/rubyipmi/freeipmi/commands/bmcinfo.rb",
|
36
|
+
"lib/rubyipmi/freeipmi/commands/chassis.rb",
|
37
|
+
"lib/rubyipmi/freeipmi/commands/chassisconfig.rb",
|
38
|
+
"lib/rubyipmi/freeipmi/commands/lan.rb",
|
39
|
+
"lib/rubyipmi/freeipmi/commands/power.rb",
|
40
|
+
"lib/rubyipmi/freeipmi/connection.rb",
|
41
|
+
"lib/rubyipmi/freeipmi/errorcodes.rb",
|
42
|
+
"lib/rubyipmi/ipmitool/commands/basecommand.rb",
|
43
|
+
"lib/rubyipmi/ipmitool/commands/bmc.rb",
|
44
|
+
"lib/rubyipmi/ipmitool/commands/chassis.rb",
|
45
|
+
"lib/rubyipmi/ipmitool/commands/chassisconfig.rb",
|
46
|
+
"lib/rubyipmi/ipmitool/commands/lan.rb",
|
47
|
+
"lib/rubyipmi/ipmitool/commands/power.rb",
|
48
|
+
"lib/rubyipmi/ipmitool/connection.rb",
|
49
|
+
"lib/rubyipmi/ipmitool/errorcodes.rb",
|
50
|
+
"lib/rubyipmi/observablehash.rb",
|
51
|
+
"rubyipmi.gemspec",
|
52
|
+
"spec/bmc_spec.rb",
|
53
|
+
"spec/chassis_config_spec.rb",
|
54
|
+
"spec/chassis_spec.rb",
|
55
|
+
"spec/connection_spec.rb",
|
56
|
+
"spec/lan_spec.rb",
|
57
|
+
"spec/power_spec.rb",
|
58
|
+
"spec/rubyipmi_spec.rb",
|
59
|
+
"spec/spec_helper.rb"
|
60
|
+
]
|
61
|
+
s.homepage = "http://github.com/logicminds/rubyipmi"
|
62
|
+
s.licenses = ["GPLv3"]
|
63
|
+
s.require_paths = ["lib"]
|
64
|
+
s.rubygems_version = "1.8.24"
|
65
|
+
s.summary = "A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi"
|
66
|
+
|
67
|
+
if s.respond_to? :specification_version then
|
68
|
+
s.specification_version = 3
|
69
|
+
|
70
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
71
|
+
s.add_development_dependency(%q<rspec>, ["~> 2.8.0"])
|
72
|
+
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
73
|
+
s.add_development_dependency(%q<bundler>, ["~> 1.1.5"])
|
74
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
|
75
|
+
s.add_development_dependency(%q<rcov>, [">= 0"])
|
76
|
+
else
|
77
|
+
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
78
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
79
|
+
s.add_dependency(%q<bundler>, ["~> 1.1.5"])
|
80
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
81
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
82
|
+
end
|
83
|
+
else
|
84
|
+
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
85
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
86
|
+
s.add_dependency(%q<bundler>, ["~> 1.1.5"])
|
87
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
88
|
+
s.add_dependency(%q<rcov>, [">= 0"])
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
data/spec/bmc_spec.rb
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
describe "Bmc" do
|
3
|
+
|
4
|
+
before :each do
|
5
|
+
user = ENV["ipmiuser"]
|
6
|
+
pass = ENV["ipmipass"]
|
7
|
+
host = ENV["ipmihost"]
|
8
|
+
provider = ENV["ipmiprovider"]
|
9
|
+
@conn = Rubyipmi.connect(user, pass, host, provider)
|
10
|
+
|
11
|
+
end
|
12
|
+
|
13
|
+
it "creates a bmc object" do
|
14
|
+
@conn.bmc.should_not be_nil
|
15
|
+
|
16
|
+
end
|
17
|
+
|
18
|
+
#it "options should change after calling info" do
|
19
|
+
# info = @conn.bmc.info
|
20
|
+
# before = info.options.clone
|
21
|
+
# @conn.bmc.info.retrieve
|
22
|
+
# after = info.options.clone
|
23
|
+
# before.length.should be < after.length
|
24
|
+
#end
|
25
|
+
|
26
|
+
|
27
|
+
it "is able to retrieve the bmc info" do
|
28
|
+
@conn.bmc.info.should_not be_nil
|
29
|
+
end
|
30
|
+
|
31
|
+
it "is able to retrieve the guid" do
|
32
|
+
@conn.bmc.guid.should_not be_nil
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
describe "Chassis Config" do
|
2
|
+
|
3
|
+
before :each do
|
4
|
+
user = ENV["ipmiuser"]
|
5
|
+
pass = ENV["ipmipass"]
|
6
|
+
host = ENV["ipmihost"]
|
7
|
+
provider = ENV["ipmiprovider"]
|
8
|
+
@conn = Rubyipmi.connect(user, pass, host, provider)
|
9
|
+
|
10
|
+
end
|
11
|
+
|
12
|
+
it "test to set booting from PXE" do
|
13
|
+
@conn.chassis.config.bootpxe.should == true
|
14
|
+
end
|
15
|
+
|
16
|
+
it "test to set booting from Disk" do
|
17
|
+
@conn.chassis.config.bootdisk.should == true
|
18
|
+
end
|
19
|
+
|
20
|
+
it "test to set booting from Cdrom" do
|
21
|
+
@conn.chassis.config.bootcdrom.should == true
|
22
|
+
end
|
23
|
+
|
24
|
+
it "test to set booting from bios" do
|
25
|
+
@conn.chassis.config.bootbios.should == true
|
26
|
+
end
|
27
|
+
|
28
|
+
it "test to set boot persistent value" do
|
29
|
+
|
30
|
+
end
|
31
|
+
|
32
|
+
it "test to checkout the entire chassis config" do
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
describe "Chassis" do
|
2
|
+
|
3
|
+
before :each do
|
4
|
+
user = ENV["ipmiuser"]
|
5
|
+
pass = ENV["ipmipass"]
|
6
|
+
host = ENV["ipmihost"]
|
7
|
+
provider = ENV["ipmiprovider"]
|
8
|
+
@conn = Rubyipmi.connect(user, pass, host, provider)
|
9
|
+
|
10
|
+
end
|
11
|
+
|
12
|
+
it "test to turn uid light on for 10 seconds" do
|
13
|
+
value = @conn.chassis.identify(true, 5)
|
14
|
+
sleep(6)
|
15
|
+
value.should == true
|
16
|
+
end
|
17
|
+
|
18
|
+
it "test to turn uid light on then off" do
|
19
|
+
@conn.chassis.identify(true)
|
20
|
+
sleep(2)
|
21
|
+
@conn.chassis.identify(false).should == true
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
describe "Connection" do
|
3
|
+
|
4
|
+
before :each do
|
5
|
+
user = ENV["ipmiuser"]
|
6
|
+
pass = ENV["ipmipass"]
|
7
|
+
host = ENV["ipmihost"]
|
8
|
+
provider = ENV["ipmiprovider"]
|
9
|
+
@conn = Rubyipmi.connect(user, pass, host, provider)
|
10
|
+
|
11
|
+
end
|
12
|
+
|
13
|
+
it "creates a new object" do
|
14
|
+
@conn.should_not be_nil
|
15
|
+
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'creates a bmc object' do
|
19
|
+
@conn.bmc.should_not be_nil
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'creates a chassis object' do
|
23
|
+
@conn.chassis.should_not be_nil
|
24
|
+
end
|
25
|
+
|
26
|
+
|
27
|
+
end
|
28
|
+
#it "raises an error if host is unreachable" do
|
29
|
+
# conn = Freeipmi.connect("admin", "creative", "192.168.1.181")
|
30
|
+
#
|
31
|
+
#end
|
data/spec/lan_spec.rb
ADDED
@@ -0,0 +1,61 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
|
3
|
+
describe "Lan" do
|
4
|
+
|
5
|
+
before :each do
|
6
|
+
user = ENV["ipmiuser"]
|
7
|
+
pass = ENV["ipmipass"]
|
8
|
+
host = ENV["ipmihost"]
|
9
|
+
provider = ENV["ipmiprovider"]
|
10
|
+
@conn = Rubyipmi.connect(user, pass, host, provider)
|
11
|
+
|
12
|
+
|
13
|
+
|
14
|
+
end
|
15
|
+
|
16
|
+
it "get ip address" do
|
17
|
+
@conn.bmc.lan.ip.should_not be nil
|
18
|
+
end
|
19
|
+
|
20
|
+
it "get subnet" do
|
21
|
+
@conn.bmc.lan.subnet.should_not be nil
|
22
|
+
end
|
23
|
+
|
24
|
+
it "get gateway address" do
|
25
|
+
@conn.bmc.lan.gateway.should_not be nil
|
26
|
+
end
|
27
|
+
|
28
|
+
it "get mac address" do
|
29
|
+
@conn.bmc.lan.mac.should_not be nil
|
30
|
+
end
|
31
|
+
|
32
|
+
it "get static or dhcp" do
|
33
|
+
@conn.bmc.lan.dhcp?.should_not be nil
|
34
|
+
end
|
35
|
+
|
36
|
+
it "static should be opposite of dhcp" do
|
37
|
+
@conn.bmc.lan.dhcp?.should_not == @conn.bmc.lan.static?
|
38
|
+
end
|
39
|
+
|
40
|
+
it "dhcp should be opposite of static" do
|
41
|
+
@conn.bmc.lan.static?.should_not == @conn.bmc.lan.dhcp?
|
42
|
+
end
|
43
|
+
|
44
|
+
|
45
|
+
it "should set gateway address" do
|
46
|
+
gw = @conn.bmc.lan.gateway
|
47
|
+
@conn.bmc.lan.set_gateway(gw).should_not be nil
|
48
|
+
end
|
49
|
+
|
50
|
+
it "should set subnet" do
|
51
|
+
netmask = @conn.bmc.lan.subnet
|
52
|
+
@conn.bmc.lan.set_subnet(netmask).should_not be nil
|
53
|
+
end
|
54
|
+
|
55
|
+
it "should set ip address" do
|
56
|
+
ip = @conn.bmc.lan.ip
|
57
|
+
@conn.bmc.lan.set_ip(ip).should_not be nil
|
58
|
+
end
|
59
|
+
|
60
|
+
|
61
|
+
end
|
data/spec/power_spec.rb
ADDED
@@ -0,0 +1,40 @@
|
|
1
|
+
describe "Power" do
|
2
|
+
|
3
|
+
before :each do
|
4
|
+
user = ENV["ipmiuser"]
|
5
|
+
pass = ENV["ipmipass"]
|
6
|
+
host = ENV["ipmihost"]
|
7
|
+
provider = ENV["ipmiprovider"]
|
8
|
+
@conn = Rubyipmi.connect(user, pass, host, provider)
|
9
|
+
|
10
|
+
end
|
11
|
+
|
12
|
+
it "test to turn power on" do
|
13
|
+
@conn.chassis.power.on.should == true
|
14
|
+
end
|
15
|
+
|
16
|
+
it "test to turn power off" do
|
17
|
+
@conn.chassis.power.off.should == true
|
18
|
+
end
|
19
|
+
|
20
|
+
it "test power status" do
|
21
|
+
@conn.chassis.power.status.should_not be nil
|
22
|
+
|
23
|
+
end
|
24
|
+
|
25
|
+
it "test to check that options automatically change" do
|
26
|
+
before = @conn.chassis.power.options.clone
|
27
|
+
@conn.chassis.power.off
|
28
|
+
after = @conn.chassis.power.options.clone
|
29
|
+
after.length.should be > before.length
|
30
|
+
end
|
31
|
+
|
32
|
+
it "test to check if power status if off" do
|
33
|
+
before = @conn.chassis.power.options.clone
|
34
|
+
@conn.chassis.power.off
|
35
|
+
after = @conn.chassis.power.options.clone
|
36
|
+
sleep(2)
|
37
|
+
@conn.chassis.power.off?.should == true
|
38
|
+
end
|
39
|
+
|
40
|
+
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
|
+
|
3
|
+
describe "rubyipmi" do
|
4
|
+
before :each do
|
5
|
+
@user = ENV["ipmiuser"]
|
6
|
+
@pass = ENV["ipmipass"]
|
7
|
+
@host = ENV["ipmihost"]
|
8
|
+
@provider = ENV["ipmiprovider"]
|
9
|
+
|
10
|
+
end
|
11
|
+
it "creates a connection object" do
|
12
|
+
conn = Rubyipmi.connect(@user, @pass, @host, @provider)
|
13
|
+
conn.should_not be_nil
|
14
|
+
end
|
15
|
+
|
16
|
+
it "should test if a provider is present" do
|
17
|
+
value = Rubyipmi.is_provider_installed?("ipmitool")
|
18
|
+
value2 = Rubyipmi.is_provider_installed?("freeipmi")
|
19
|
+
(value|value2).should_not be false
|
20
|
+
|
21
|
+
end
|
22
|
+
|
23
|
+
it "should create a connection object if freeipmi is present" do
|
24
|
+
begin
|
25
|
+
conn = Rubyipmi.connect(@user, @pass, @host, "freeipmi")
|
26
|
+
conn.kind_of?(Rubyipmi::Freeipmi::Connection).should be_true
|
27
|
+
rescue Exception => e
|
28
|
+
e.message.match(/freeipmi\ is\ not\ installed/).should be_true
|
29
|
+
puts "#{e.message}"
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
it "should create a connection object if ipmitool is present" do
|
34
|
+
begin
|
35
|
+
conn = Rubyipmi.connect(@user, @pass, @host, "ipmitool")
|
36
|
+
rescue Exception => e
|
37
|
+
e.message.match(/ipmitool\ is\ not\ installed/).should be_true
|
38
|
+
puts "#{e.message}"
|
39
|
+
return true
|
40
|
+
end
|
41
|
+
conn.kind_of?(Rubyipmi::Ipmitool::Connection).should be_true
|
42
|
+
end
|
43
|
+
|
44
|
+
it "should not create a connection object if a provider is not present" do
|
45
|
+
begin
|
46
|
+
conn = Rubyipmi.connect(@user, @pass, @host, "bogus")
|
47
|
+
rescue Exception => e
|
48
|
+
e.message.match(/Invalid/).should be_true
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
it "check to find any available installed providers" do
|
53
|
+
Rubyipmi.providers_installed?.length.should be > 0
|
54
|
+
end
|
55
|
+
|
56
|
+
|
57
|
+
|
58
|
+
end
|
59
|
+
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
2
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
3
|
+
require 'rspec'
|
4
|
+
require 'rubyipmi'
|
5
|
+
|
6
|
+
# Requires supporting files with custom matchers and macros, etc,
|
7
|
+
# in ./support/ and its subdirectories.
|
8
|
+
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
|
9
|
+
|
10
|
+
RSpec.configure do |config|
|
11
|
+
|
12
|
+
end
|
metadata
ADDED
@@ -0,0 +1,181 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rubyipmi
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 19
|
5
|
+
prerelease:
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 3
|
9
|
+
- 0
|
10
|
+
version: 0.3.0
|
11
|
+
platform: ruby
|
12
|
+
authors:
|
13
|
+
- Corey Osman
|
14
|
+
autorequire:
|
15
|
+
bindir: bin
|
16
|
+
cert_chain: []
|
17
|
+
|
18
|
+
date: 2012-08-14 00:00:00 Z
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
type: :development
|
22
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
23
|
+
none: false
|
24
|
+
requirements:
|
25
|
+
- - ~>
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
hash: 47
|
28
|
+
segments:
|
29
|
+
- 2
|
30
|
+
- 8
|
31
|
+
- 0
|
32
|
+
version: 2.8.0
|
33
|
+
version_requirements: *id001
|
34
|
+
name: rspec
|
35
|
+
prerelease: false
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
type: :development
|
38
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ~>
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
hash: 31
|
44
|
+
segments:
|
45
|
+
- 3
|
46
|
+
- 12
|
47
|
+
version: "3.12"
|
48
|
+
version_requirements: *id002
|
49
|
+
name: rdoc
|
50
|
+
prerelease: false
|
51
|
+
- !ruby/object:Gem::Dependency
|
52
|
+
type: :development
|
53
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
54
|
+
none: false
|
55
|
+
requirements:
|
56
|
+
- - ~>
|
57
|
+
- !ruby/object:Gem::Version
|
58
|
+
hash: 25
|
59
|
+
segments:
|
60
|
+
- 1
|
61
|
+
- 1
|
62
|
+
- 5
|
63
|
+
version: 1.1.5
|
64
|
+
version_requirements: *id003
|
65
|
+
name: bundler
|
66
|
+
prerelease: false
|
67
|
+
- !ruby/object:Gem::Dependency
|
68
|
+
type: :development
|
69
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
70
|
+
none: false
|
71
|
+
requirements:
|
72
|
+
- - ~>
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
hash: 63
|
75
|
+
segments:
|
76
|
+
- 1
|
77
|
+
- 8
|
78
|
+
- 4
|
79
|
+
version: 1.8.4
|
80
|
+
version_requirements: *id004
|
81
|
+
name: jeweler
|
82
|
+
prerelease: false
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
type: :development
|
85
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
86
|
+
none: false
|
87
|
+
requirements:
|
88
|
+
- - ">="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
hash: 3
|
91
|
+
segments:
|
92
|
+
- 0
|
93
|
+
version: "0"
|
94
|
+
version_requirements: *id005
|
95
|
+
name: rcov
|
96
|
+
prerelease: false
|
97
|
+
description: A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi
|
98
|
+
email: corey@logicminds.biz
|
99
|
+
executables: []
|
100
|
+
|
101
|
+
extensions: []
|
102
|
+
|
103
|
+
extra_rdoc_files:
|
104
|
+
- LICENSE.txt
|
105
|
+
- README.md
|
106
|
+
- README.rdoc
|
107
|
+
files:
|
108
|
+
- .document
|
109
|
+
- .rspec
|
110
|
+
- Gemfile
|
111
|
+
- Gemfile.lock
|
112
|
+
- LICENSE.txt
|
113
|
+
- README.md
|
114
|
+
- README.rdoc
|
115
|
+
- Rakefile
|
116
|
+
- VERSION
|
117
|
+
- lib/rubyipmi.rb
|
118
|
+
- lib/rubyipmi/commands/basecommand.rb
|
119
|
+
- lib/rubyipmi/freeipmi/commands/basecommand.rb
|
120
|
+
- lib/rubyipmi/freeipmi/commands/bmc.rb
|
121
|
+
- lib/rubyipmi/freeipmi/commands/bmcconfig.rb
|
122
|
+
- lib/rubyipmi/freeipmi/commands/bmcinfo.rb
|
123
|
+
- lib/rubyipmi/freeipmi/commands/chassis.rb
|
124
|
+
- lib/rubyipmi/freeipmi/commands/chassisconfig.rb
|
125
|
+
- lib/rubyipmi/freeipmi/commands/lan.rb
|
126
|
+
- lib/rubyipmi/freeipmi/commands/power.rb
|
127
|
+
- lib/rubyipmi/freeipmi/connection.rb
|
128
|
+
- lib/rubyipmi/freeipmi/errorcodes.rb
|
129
|
+
- lib/rubyipmi/ipmitool/commands/basecommand.rb
|
130
|
+
- lib/rubyipmi/ipmitool/commands/bmc.rb
|
131
|
+
- lib/rubyipmi/ipmitool/commands/chassis.rb
|
132
|
+
- lib/rubyipmi/ipmitool/commands/chassisconfig.rb
|
133
|
+
- lib/rubyipmi/ipmitool/commands/lan.rb
|
134
|
+
- lib/rubyipmi/ipmitool/commands/power.rb
|
135
|
+
- lib/rubyipmi/ipmitool/connection.rb
|
136
|
+
- lib/rubyipmi/ipmitool/errorcodes.rb
|
137
|
+
- lib/rubyipmi/observablehash.rb
|
138
|
+
- rubyipmi.gemspec
|
139
|
+
- spec/bmc_spec.rb
|
140
|
+
- spec/chassis_config_spec.rb
|
141
|
+
- spec/chassis_spec.rb
|
142
|
+
- spec/connection_spec.rb
|
143
|
+
- spec/lan_spec.rb
|
144
|
+
- spec/power_spec.rb
|
145
|
+
- spec/rubyipmi_spec.rb
|
146
|
+
- spec/spec_helper.rb
|
147
|
+
homepage: http://github.com/logicminds/rubyipmi
|
148
|
+
licenses:
|
149
|
+
- GPLv3
|
150
|
+
post_install_message:
|
151
|
+
rdoc_options: []
|
152
|
+
|
153
|
+
require_paths:
|
154
|
+
- lib
|
155
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
156
|
+
none: false
|
157
|
+
requirements:
|
158
|
+
- - ">="
|
159
|
+
- !ruby/object:Gem::Version
|
160
|
+
hash: 3
|
161
|
+
segments:
|
162
|
+
- 0
|
163
|
+
version: "0"
|
164
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
165
|
+
none: false
|
166
|
+
requirements:
|
167
|
+
- - ">="
|
168
|
+
- !ruby/object:Gem::Version
|
169
|
+
hash: 3
|
170
|
+
segments:
|
171
|
+
- 0
|
172
|
+
version: "0"
|
173
|
+
requirements: []
|
174
|
+
|
175
|
+
rubyforge_project:
|
176
|
+
rubygems_version: 1.8.24
|
177
|
+
signing_key:
|
178
|
+
specification_version: 3
|
179
|
+
summary: A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi
|
180
|
+
test_files: []
|
181
|
+
|