rubyipmi 0.6.0 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +15 -0
  2. data/Gemfile +5 -3
  3. data/README.md +24 -14
  4. data/Rakefile +82 -4
  5. data/VERSION +1 -1
  6. data/lib/rubyipmi.rb +36 -14
  7. data/lib/rubyipmi/commands/basecommand.rb +57 -119
  8. data/lib/rubyipmi/freeipmi/commands/basecommand.rb +29 -25
  9. data/lib/rubyipmi/freeipmi/commands/bmc.rb +3 -3
  10. data/lib/rubyipmi/freeipmi/commands/bmcconfig.rb +6 -6
  11. data/lib/rubyipmi/freeipmi/commands/bmcinfo.rb +3 -23
  12. data/lib/rubyipmi/freeipmi/commands/fru.rb +117 -23
  13. data/lib/rubyipmi/freeipmi/commands/lan.rb +32 -37
  14. data/lib/rubyipmi/freeipmi/commands/power.rb +1 -1
  15. data/lib/rubyipmi/freeipmi/commands/sensors.rb +53 -50
  16. data/lib/rubyipmi/freeipmi/connection.rb +16 -2
  17. data/lib/rubyipmi/freeipmi/errorcodes.rb +25 -2
  18. data/lib/rubyipmi/ipmitool/commands/basecommand.rb +20 -37
  19. data/lib/rubyipmi/ipmitool/commands/bmc.rb +1 -24
  20. data/lib/rubyipmi/ipmitool/commands/chassis.rb +1 -0
  21. data/lib/rubyipmi/ipmitool/commands/fru.rb +112 -30
  22. data/lib/rubyipmi/ipmitool/commands/lan.rb +55 -77
  23. data/lib/rubyipmi/ipmitool/commands/power.rb +10 -4
  24. data/lib/rubyipmi/ipmitool/commands/sensors.rb +53 -80
  25. data/lib/rubyipmi/ipmitool/connection.rb +19 -3
  26. data/lib/rubyipmi/ipmitool/errorcodes.rb +51 -3
  27. data/rubyipmi.gemspec +73 -33
  28. data/spec/Vagrantfile +45 -0
  29. data/spec/fixtures/freeipmi/bmc_config.txt +317 -0
  30. data/spec/fixtures/freeipmi/bmc_config_lan_conf.txt +19 -0
  31. data/spec/fixtures/freeipmi/bmc_info.txt +32 -0
  32. data/spec/fixtures/freeipmi/errors.txt +3 -0
  33. data/spec/fixtures/freeipmi/fru.txt +13 -0
  34. data/spec/fixtures/freeipmi/sensors.txt +29 -0
  35. data/spec/fixtures/ipmitool/bmc_info.txt +20 -0
  36. data/spec/fixtures/ipmitool/errors.txt +10 -0
  37. data/spec/fixtures/ipmitool/fru.txt +96 -0
  38. data/spec/fixtures/ipmitool/lan.txt +17 -0
  39. data/spec/fixtures/ipmitool/sensors.txt +105 -0
  40. data/spec/integration/bmc_spec.rb +49 -0
  41. data/spec/{chassis_config_spec.rb → integration/chassis_config_spec.rb} +6 -6
  42. data/spec/integration/chassis_spec.rb +26 -0
  43. data/spec/integration/connection_spec.rb +35 -0
  44. data/spec/{fru_spec.rb → integration/fru_spec.rb} +11 -10
  45. data/spec/{lan_spec.rb → integration/lan_spec.rb} +9 -7
  46. data/spec/integration/power_spec.rb +40 -0
  47. data/spec/{rubyipmi_spec.rb → integration/rubyipmi_spec.rb} +7 -10
  48. data/spec/{sensor_spec.rb → integration/sensor_spec.rb} +5 -20
  49. data/spec/manifests/default.pp +50 -0
  50. data/spec/puppetmodules/archive/LICENSE-2.0.txt +202 -0
  51. data/spec/puppetmodules/archive/Modulefile +8 -0
  52. data/spec/puppetmodules/archive/README.md +40 -0
  53. data/spec/puppetmodules/archive/manifests/download.pp +157 -0
  54. data/spec/puppetmodules/archive/manifests/extract.pp +81 -0
  55. data/spec/puppetmodules/archive/manifests/init.pp +70 -0
  56. data/spec/puppetmodules/archive/manifests/tar-gz.pp +7 -0
  57. data/spec/puppetmodules/archive/manifests/zip.pp +7 -0
  58. data/spec/puppetmodules/archive/metadata.json +26 -0
  59. data/spec/spec_helper.rb +35 -3
  60. data/spec/unit/freeipmi/bmc-info_spec.rb +42 -0
  61. data/spec/unit/freeipmi/bmc_spec.rb +44 -0
  62. data/spec/unit/freeipmi/connection_spec.rb +56 -0
  63. data/spec/unit/freeipmi/errorcodes_spec.rb +34 -0
  64. data/spec/unit/freeipmi/fru_spec.rb +77 -0
  65. data/spec/unit/freeipmi/lan_spec.rb +0 -0
  66. data/spec/unit/freeipmi/sensors_spec.rb +83 -0
  67. data/spec/unit/ipmitool/bmc_spec.rb +78 -0
  68. data/spec/unit/ipmitool/connection_spec.rb +58 -0
  69. data/spec/unit/ipmitool/errorcodes_spec.rb +34 -0
  70. data/spec/unit/ipmitool/fru_spec.rb +77 -0
  71. data/spec/unit/ipmitool/lan_spec.rb +93 -0
  72. data/spec/unit/ipmitool/sensors_spec.rb +95 -0
  73. data/spec/unit/rubyipmi_spec.rb +31 -0
  74. data/spec/vagrant +27 -0
  75. data/spec/vagrant.pub +1 -0
  76. metadata +157 -106
  77. data/.document +0 -5
  78. data/.rspec +0 -1
  79. data/Gemfile.lock +0 -33
  80. data/spec/bmc_spec.rb +0 -46
  81. data/spec/chassis_spec.rb +0 -26
  82. data/spec/connection_spec.rb +0 -31
  83. data/spec/power_spec.rb +0 -42
@@ -0,0 +1,34 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
+ require 'rubyipmi/ipmitool/errorcodes'
3
+
4
+ describe "Errorcodes" do
5
+
6
+
7
+
8
+ it 'should return the length of fix hash' do
9
+ Rubyipmi::Ipmitool::ErrorCodes.length.should be > 1
10
+ end
11
+
12
+ it 'should return a hash of codes' do
13
+ Rubyipmi::Ipmitool::ErrorCodes.code.should be_an_instance_of Hash
14
+
15
+ end
16
+
17
+ it 'should return a fix if code is found' do
18
+ code = 'Authentication type NONE not supported'
19
+ Rubyipmi::Ipmitool::ErrorCodes.search(code).should eq({"I"=>"lanplus"})
20
+ end
21
+
22
+ it 'should throw and error if no fix is found' do
23
+ code = 'Crap Shoot'
24
+ expect {Rubyipmi::Ipmitool::ErrorCodes.search(code)}.to raise_error
25
+ end
26
+
27
+ it 'should throw and error when a bad code is given' do
28
+ code = nil
29
+ expect {Rubyipmi::Ipmitool::ErrorCodes.search(code)}.to raise_error
30
+ end
31
+
32
+
33
+
34
+ end
@@ -0,0 +1,77 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
+
3
+ describe :Fru do
4
+
5
+ before :all do
6
+ @path = '/usr/local/bin'
7
+ end
8
+
9
+ before :each do
10
+ allow_message_expectations_on_nil
11
+ data = nil
12
+ provider = "ipmitool"
13
+ user = "ipmiuser"
14
+ pass = "impipass"
15
+ host = "ipmihost"
16
+ Rubyipmi.stub(:locate_command).with('ipmitool').and_return("#{@path}/ipmitool")
17
+
18
+ @conn = Rubyipmi.connect(user, pass, host, provider, true)
19
+ @fru = @conn.fru
20
+
21
+ File.open("spec/fixtures/#{provider}/fru.txt",'r') do |file|
22
+ data = file.read
23
+ end
24
+
25
+ @fru.stub(:locate_command).with('ipmitool').and_return("#{@path}/ipmitool")
26
+ @fru.stub(:`).and_return(data)
27
+ $?.stub(:success?).and_return(true)
28
+
29
+ end
30
+
31
+ it "cmd should be ipmi-sensors with correct number of arguments" do
32
+ @fru.list
33
+ verify_ipmitool_command(@fru, 3, "#{@path}/ipmitool", 'fru')
34
+ end
35
+
36
+ it 'should return a list of unparsed frus' do
37
+ @fru.getfrus.should_not be_nil
38
+ end
39
+
40
+ it 'should return a list of fru names' do
41
+ @fru.names.count.should eq(13)
42
+ end
43
+
44
+ it "should return a list of parsed frus" do
45
+ @fru.list.count.should eq(13)
46
+ end
47
+
48
+ it 'should return a manufactor' do
49
+ @fru.product_manufacturer.should eq('HP')
50
+ end
51
+
52
+ it 'should return a product' do
53
+ @fru.product_name.should eq('ProLiant SL230s Gen8')
54
+ end
55
+
56
+ it 'should return a board serial' do
57
+ @fru.board_serial.should eq('USE238F0D0')
58
+ end
59
+
60
+ it 'should return a product serial' do
61
+ @fru.product_serial.should eq('USE238F0D0')
62
+ end
63
+
64
+ it 'should return a asset tag' do
65
+ @fru.product_asset_tag.should eq('000015B90F82')
66
+ end
67
+
68
+ it 'should return a fru using method missing' do
69
+ @fru.names.each do |name|
70
+ fru = @fru.send(name)
71
+ fru.should be_an_instance_of(Rubyipmi::Ipmitool::FruData)
72
+ fru[:name].should eq(name)
73
+ end
74
+ end
75
+
76
+
77
+ end
@@ -0,0 +1,93 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
+ describe "Lan" do
3
+
4
+ before :all do
5
+ @path = '/usr/local/bin'
6
+ end
7
+
8
+ before :each do
9
+ allow_message_expectations_on_nil
10
+ provider = "ipmitool"
11
+ user = "ipmiuser"
12
+ pass = "impipass"
13
+ host = "ipmihost"
14
+ Rubyipmi.stub(:locate_command).with('ipmitool').and_return("#{@path}/ipmitool")
15
+ @conn = Rubyipmi.connect(user, pass, host, provider, true)
16
+ @lan = @conn.bmc.lan
17
+ data = nil
18
+ File.open("spec/fixtures/#{provider}/lan.txt",'r') do |file|
19
+ data = file.read
20
+ end
21
+
22
+ @lan.stub(:locate_command).with('ipmitool').and_return("#{@path}/ipmitool")
23
+ @lan.stub(:`).and_return(data)
24
+ $?.stub(:success?).and_return(true)
25
+ end
26
+
27
+ it "cmd should be lan with correct number of arguments" do
28
+ @lan.info
29
+ verify_ipmitool_command(@lan, 3, "#{@path}/ipmitool", 'lan')
30
+ end
31
+
32
+ it "can return a lan information" do
33
+ @lan.info.should_not be_nil
34
+ end
35
+
36
+ it "can print valid lan info" do
37
+ @lan.info.length.should > 1
38
+ end
39
+
40
+ it 'should print valid ip address' do
41
+ @lan.ip.should eq('192.168.1.41')
42
+ end
43
+
44
+ it 'should print valid snmp string' do
45
+ @lan.snmp.should be_nil
46
+
47
+ end
48
+
49
+ it 'should print correct mac address' do
50
+ @lan.mac.should eq('00:17:a4:49:ab:70')
51
+ end
52
+
53
+ it 'should print correct netmask' do
54
+ @lan.netmask.should eq('255.255.255.0')
55
+ end
56
+
57
+ it 'should print correct gateway' do
58
+ @lan.gateway.should eq('192.168.1.1')
59
+ end
60
+
61
+ it 'should print vlanid' do
62
+ @lan.vlanid.should be_nil
63
+ end
64
+
65
+ it 'dhcp should return true' do
66
+ @lan.dhcp?.should be_true
67
+ end
68
+
69
+ it 'static should return false' do
70
+ @lan.static?.should be_false
71
+ end
72
+
73
+ #it 'should attempt to apply fix and fail, then switch to channel 1' do
74
+ # channelbefore = @lan.channel
75
+ # error = "some lan channel problem"
76
+ # @lan.stub(:`).and_return(error)
77
+ # $?.stub(:success?).and_return(false)
78
+ # @lan.ip
79
+ # channelbefore = @lan.channel
80
+ #
81
+ # data = nil
82
+ # File.open("spec/fixtures/#{provider}/lan.txt",'r') do |file|
83
+ # data = file.read
84
+ # end
85
+ #
86
+ # @lan.stub(:locate_command).with('ipmitool').and_return("#{@path}/ipmitool")
87
+ # @lan.stub(:`).and_return(data)
88
+ # $?.stub(:success?).and_return(true)
89
+ #
90
+ #end
91
+
92
+ end
93
+
@@ -0,0 +1,95 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../../spec_helper')
2
+ describe :Sensors do
3
+ before :all do
4
+ @path = '/usr/local/bin'
5
+ end
6
+
7
+ before :each do
8
+ allow_message_expectations_on_nil
9
+
10
+ data = nil
11
+ provider = "ipmitool"
12
+ user = "ipmiuser"
13
+ pass = "impipass"
14
+ host = "ipmihost"
15
+ Rubyipmi.stub(:locate_command).with('ipmitool').and_return("#{@path}/ipmitool")
16
+
17
+ @conn = Rubyipmi.connect(user, pass, host, provider, true)
18
+ @sensors = @conn.sensors
19
+ File.open("spec/fixtures/#{provider}/sensors.txt",'r') do |file|
20
+ data = file.read
21
+ end
22
+ @sensors.stub(:locate_command).with('ipmitool').and_return("#{@path}/ipmitool")
23
+ @sensors.stub(:`).and_return(data)
24
+
25
+ # this is causing an error: An expectation of :success? was set on nil
26
+ $?.stub(:success?).and_return(true)
27
+
28
+ end
29
+
30
+ #it 'should figure out to add the -I lanplus' do
31
+ # error = 'Authentication type NONE not supported'
32
+ # @sensors.stub(:`).and_return(error)
33
+ # @sensors.list
34
+ # @sensors.lastcall.includes?('-I lanplus')
35
+ #end
36
+
37
+ #it "cmd should be ipmi-sensors with three arguments" do
38
+ # @sensors.list
39
+ # verify_ipmitool_command(@sensors, 3, "#{@path}/ipmitool", 'sensor')
40
+ #end
41
+
42
+ it "can return a list of sensors" do
43
+ @sensors.list.should_not be_nil
44
+ end
45
+
46
+ it "should return a count of sensors" do
47
+ @sensors.count.should eq(99)
48
+ end
49
+
50
+ it "should return a list of fan names" do
51
+ @sensors.fanlist.count.should eq(17)
52
+ end
53
+
54
+ it 'should return a list of temp names' do
55
+ @sensors.templist.count.should.should eq(43)
56
+ @sensors.templist.each do | temp |
57
+ end
58
+ end
59
+
60
+ it 'should return a list of sensor names as an array' do
61
+ @sensors.names.should be_an_instance_of(Array)
62
+ @sensors.names.count.should eq(99)
63
+ end
64
+
65
+ it 'should return an empty list if no data exists' do
66
+ @sensors.stub(:getsensors).and_return(nil)
67
+ @sensors.names.count.should eq(0)
68
+ end
69
+
70
+ it 'should return a sensor using method missing' do
71
+ @sensors.names.each do |name|
72
+ sensor = @sensors.send(name)
73
+ sensor.should be_an_instance_of(Rubyipmi::Ipmitool::Sensor)
74
+ end
75
+ end
76
+
77
+ it "test should create new Sensor" do
78
+ Rubyipmi::Ipmitool::Sensor.new("fakesensor").should_not be nil
79
+ end
80
+
81
+ #it 'fix should be added to options after error occurs' do
82
+ # error = nil
83
+ # File.open("spec/fixtures/ipmitool/errors.txt",'r') do |file|
84
+ # error = file.read
85
+ # end
86
+ # @sensors.stub(:`).and_return(error)
87
+ # $?.stub(:success?).and_return(false)
88
+ # @sensors.list
89
+ # after = @sensors.options.fetch('I', false).should_not be_false
90
+ #end
91
+
92
+
93
+
94
+ end
95
+
@@ -0,0 +1,31 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
2
+
3
+ describe :Rubyipmi do
4
+
5
+
6
+ before :each do
7
+
8
+ end
9
+
10
+ it 'is provider installed should return ipmitool true' do
11
+ Rubyipmi.stub(:locate_command).with('ipmitool').and_return('/usr/local/bin/ipmitool')
12
+ Rubyipmi.is_provider_installed?('ipmitool').should be_true
13
+ end
14
+
15
+ it 'is locate command should return command in /usr/local/bin' do
16
+ Rubyipmi.stub(:locate_command).with('ipmitool').and_return('/usr/local/bin/ipmitool')
17
+ Rubyipmi.locate_command('ipmitool').should eq('/usr/local/bin/ipmitool')
18
+ end
19
+
20
+ it 'is provider installed should return freeipmi true' do
21
+ Rubyipmi.stub(:locate_command).with('ipmipower').and_return('/usr/local/bin/ipmipower')
22
+ Rubyipmi.is_provider_installed?('freeipmi').should be_true
23
+ end
24
+
25
+ it 'is provider installed should return error with ipmitool' do
26
+ expect{Rubyipmi.is_provider_installed?('bad_provider')}.to raise_error
27
+ end
28
+
29
+ end
30
+
31
+
data/spec/vagrant ADDED
@@ -0,0 +1,27 @@
1
+ -----BEGIN RSA PRIVATE KEY-----
2
+ MIIEogIBAAKCAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzI
3
+ w+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoP
4
+ kcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2
5
+ hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NO
6
+ Td0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcW
7
+ yLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQIBIwKCAQEA4iqWPJXtzZA68mKd
8
+ ELs4jJsdyky+ewdZeNds5tjcnHU5zUYE25K+ffJED9qUWICcLZDc81TGWjHyAqD1
9
+ Bw7XpgUwFgeUJwUlzQurAv+/ySnxiwuaGJfhFM1CaQHzfXphgVml+fZUvnJUTvzf
10
+ TK2Lg6EdbUE9TarUlBf/xPfuEhMSlIE5keb/Zz3/LUlRg8yDqz5w+QWVJ4utnKnK
11
+ iqwZN0mwpwU7YSyJhlT4YV1F3n4YjLswM5wJs2oqm0jssQu/BT0tyEXNDYBLEF4A
12
+ sClaWuSJ2kjq7KhrrYXzagqhnSei9ODYFShJu8UWVec3Ihb5ZXlzO6vdNQ1J9Xsf
13
+ 4m+2ywKBgQD6qFxx/Rv9CNN96l/4rb14HKirC2o/orApiHmHDsURs5rUKDx0f9iP
14
+ cXN7S1uePXuJRK/5hsubaOCx3Owd2u9gD6Oq0CsMkE4CUSiJcYrMANtx54cGH7Rk
15
+ EjFZxK8xAv1ldELEyxrFqkbE4BKd8QOt414qjvTGyAK+OLD3M2QdCQKBgQDtx8pN
16
+ CAxR7yhHbIWT1AH66+XWN8bXq7l3RO/ukeaci98JfkbkxURZhtxV/HHuvUhnPLdX
17
+ 3TwygPBYZFNo4pzVEhzWoTtnEtrFueKxyc3+LjZpuo+mBlQ6ORtfgkr9gBVphXZG
18
+ YEzkCD3lVdl8L4cw9BVpKrJCs1c5taGjDgdInQKBgHm/fVvv96bJxc9x1tffXAcj
19
+ 3OVdUN0UgXNCSaf/3A/phbeBQe9xS+3mpc4r6qvx+iy69mNBeNZ0xOitIjpjBo2+
20
+ dBEjSBwLk5q5tJqHmy/jKMJL4n9ROlx93XS+njxgibTvU6Fp9w+NOFD/HvxB3Tcz
21
+ 6+jJF85D5BNAG3DBMKBjAoGBAOAxZvgsKN+JuENXsST7F89Tck2iTcQIT8g5rwWC
22
+ P9Vt74yboe2kDT531w8+egz7nAmRBKNM751U/95P9t88EDacDI/Z2OwnuFQHCPDF
23
+ llYOUI+SpLJ6/vURRbHSnnn8a/XG+nzedGH5JGqEJNQsz+xT2axM0/W/CRknmGaJ
24
+ kda/AoGANWrLCz708y7VYgAtW2Uf1DPOIYMdvo6fxIB5i9ZfISgcJ/bbCUkFrhoH
25
+ +vq/5CIWxCPp0f85R4qxxQ5ihxJ0YDQT9Jpx4TMss4PSavPaBH3RXow5Ohe+bYoQ
26
+ NE5OgEXk2wVfZczCZpigBKbKZHNYcelXtTt/nP3rsCuGcM4h53s=
27
+ -----END RSA PRIVATE KEY-----
data/spec/vagrant.pub ADDED
@@ -0,0 +1 @@
1
+ ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA6NF8iallvQVp22WDkTkyrtvp9eWW6A8YVr+kz4TjGYe7gHzIw+niNltGEFHzD8+v1I2YJ6oXevct1YeS0o9HZyN1Q9qgCgzUFtdOKLv6IedplqoPkcmF0aYet2PkEDo3MlTBckFXPITAMzF8dJSIFo9D8HfdOV0IAdx4O7PtixWKn5y2hMNG0zQPyUecp4pzC6kivAIhyfHilFR61RGL+GPXQ2MWZWFYbAGjyiYJnAmCP3NOTd0jMZEnDkbUvxhMmBYSdETk1rRgm+R4LOzFUGaHqHDLKLX+FIPKcF96hrucXzcWyLbIbEgE98OHlnVYCzRdK8jlqm8tehUc9c9WhQ== vagrant insecure public key
metadata CHANGED
@@ -1,104 +1,123 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: rubyipmi
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 6
8
- - 0
9
- version: 0.6.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.7.0
10
5
  platform: ruby
11
- authors:
6
+ authors:
12
7
  - Corey Osman
13
8
  autorequire:
14
9
  bindir: bin
15
10
  cert_chain: []
16
-
17
- date: 2013-07-03 00:00:00 -07:00
18
- default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
21
- type: :development
22
- version_requirements: &id001 !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ~>
25
- - !ruby/object:Gem::Version
26
- segments:
27
- - 2
28
- - 8
29
- - 0
30
- version: 2.8.0
11
+ date: 2013-10-17 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
31
14
  name: rspec
32
- requirement: *id001
33
- prerelease: false
34
- - !ruby/object:Gem::Dependency
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - <=
18
+ - !ruby/object:Gem::Version
19
+ version: 2.8.0
35
20
  type: :development
36
- version_requirements: &id002 !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ~>
39
- - !ruby/object:Gem::Version
40
- segments:
41
- - 3
42
- - 12
43
- version: "3.12"
44
- name: rdoc
45
- requirement: *id002
46
21
  prerelease: false
47
- - !ruby/object:Gem::Dependency
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - <=
25
+ - !ruby/object:Gem::Version
26
+ version: 2.8.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: rdoc
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: '3.12'
48
34
  type: :development
49
- version_requirements: &id003 !ruby/object:Gem::Requirement
50
- requirements:
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
51
38
  - - ~>
52
- - !ruby/object:Gem::Version
53
- segments:
54
- - 1
55
- - 1
56
- - 5
57
- version: 1.1.5
39
+ - !ruby/object:Gem::Version
40
+ version: '3.12'
41
+ - !ruby/object:Gem::Dependency
58
42
  name: bundler
59
- requirement: *id003
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ! '>='
46
+ - !ruby/object:Gem::Version
47
+ version: 1.1.5
48
+ type: :development
60
49
  prerelease: false
61
- - !ruby/object:Gem::Dependency
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
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: 1.8.4
62
62
  type: :development
63
- version_requirements: &id004 !ruby/object:Gem::Requirement
64
- requirements:
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
65
66
  - - ~>
66
- - !ruby/object:Gem::Version
67
- segments:
68
- - 1
69
- - 8
70
- - 4
67
+ - !ruby/object:Gem::Version
71
68
  version: 1.8.4
72
- name: jeweler
73
- requirement: *id004
69
+ - !ruby/object:Gem::Dependency
70
+ name: rcov
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - <
74
+ - !ruby/object:Gem::Version
75
+ version: 1.0.0
76
+ type: :development
74
77
  prerelease: false
75
- - !ruby/object:Gem::Dependency
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - <
81
+ - !ruby/object:Gem::Version
82
+ version: 1.0.0
83
+ - !ruby/object:Gem::Dependency
84
+ name: highline
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ! '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ! '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: rake
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ! '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
76
104
  type: :development
77
- version_requirements: &id005 !ruby/object:Gem::Requirement
78
- requirements:
79
- - - ">="
80
- - !ruby/object:Gem::Version
81
- segments:
82
- - 0
83
- version: "0"
84
- name: rcov
85
- requirement: *id005
86
105
  prerelease: false
87
- description: A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ! '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ description: Provides a library for controlling IPMI devices using pure ruby code
88
112
  email: corey@logicminds.biz
89
113
  executables: []
90
-
91
114
  extensions: []
92
-
93
- extra_rdoc_files:
115
+ extra_rdoc_files:
94
116
  - LICENSE.txt
95
117
  - README.md
96
118
  - README.rdoc
97
- files:
98
- - .document
99
- - .rspec
119
+ files:
100
120
  - Gemfile
101
- - Gemfile.lock
102
121
  - LICENSE.txt
103
122
  - README.md
104
123
  - README.rdoc
@@ -131,45 +150,77 @@ files:
131
150
  - lib/rubyipmi/ipmitool/errorcodes.rb
132
151
  - lib/rubyipmi/observablehash.rb
133
152
  - rubyipmi.gemspec
134
- - spec/bmc_spec.rb
135
- - spec/chassis_config_spec.rb
136
- - spec/chassis_spec.rb
137
- - spec/connection_spec.rb
138
- - spec/fru_spec.rb
139
- - spec/lan_spec.rb
140
- - spec/power_spec.rb
141
- - spec/rubyipmi_spec.rb
142
- - spec/sensor_spec.rb
153
+ - spec/Vagrantfile
154
+ - spec/fixtures/freeipmi/bmc_config.txt
155
+ - spec/fixtures/freeipmi/bmc_config_lan_conf.txt
156
+ - spec/fixtures/freeipmi/bmc_info.txt
157
+ - spec/fixtures/freeipmi/errors.txt
158
+ - spec/fixtures/freeipmi/fru.txt
159
+ - spec/fixtures/freeipmi/sensors.txt
160
+ - spec/fixtures/ipmitool/bmc_info.txt
161
+ - spec/fixtures/ipmitool/errors.txt
162
+ - spec/fixtures/ipmitool/fru.txt
163
+ - spec/fixtures/ipmitool/lan.txt
164
+ - spec/fixtures/ipmitool/sensors.txt
165
+ - spec/integration/bmc_spec.rb
166
+ - spec/integration/chassis_config_spec.rb
167
+ - spec/integration/chassis_spec.rb
168
+ - spec/integration/connection_spec.rb
169
+ - spec/integration/fru_spec.rb
170
+ - spec/integration/lan_spec.rb
171
+ - spec/integration/power_spec.rb
172
+ - spec/integration/rubyipmi_spec.rb
173
+ - spec/integration/sensor_spec.rb
174
+ - spec/manifests/default.pp
175
+ - spec/puppetmodules/archive/LICENSE-2.0.txt
176
+ - spec/puppetmodules/archive/Modulefile
177
+ - spec/puppetmodules/archive/README.md
178
+ - spec/puppetmodules/archive/manifests/download.pp
179
+ - spec/puppetmodules/archive/manifests/extract.pp
180
+ - spec/puppetmodules/archive/manifests/init.pp
181
+ - spec/puppetmodules/archive/manifests/tar-gz.pp
182
+ - spec/puppetmodules/archive/manifests/zip.pp
183
+ - spec/puppetmodules/archive/metadata.json
143
184
  - spec/spec_helper.rb
144
- has_rdoc: true
185
+ - spec/unit/freeipmi/bmc-info_spec.rb
186
+ - spec/unit/freeipmi/bmc_spec.rb
187
+ - spec/unit/freeipmi/connection_spec.rb
188
+ - spec/unit/freeipmi/errorcodes_spec.rb
189
+ - spec/unit/freeipmi/fru_spec.rb
190
+ - spec/unit/freeipmi/lan_spec.rb
191
+ - spec/unit/freeipmi/sensors_spec.rb
192
+ - spec/unit/ipmitool/bmc_spec.rb
193
+ - spec/unit/ipmitool/connection_spec.rb
194
+ - spec/unit/ipmitool/errorcodes_spec.rb
195
+ - spec/unit/ipmitool/fru_spec.rb
196
+ - spec/unit/ipmitool/lan_spec.rb
197
+ - spec/unit/ipmitool/sensors_spec.rb
198
+ - spec/unit/rubyipmi_spec.rb
199
+ - spec/vagrant
200
+ - spec/vagrant.pub
145
201
  homepage: http://github.com/logicminds/rubyipmi
146
- licenses:
202
+ licenses:
147
203
  - GPLv3
204
+ metadata: {}
148
205
  post_install_message:
149
206
  rdoc_options: []
150
-
151
- require_paths:
207
+ require_paths:
152
208
  - lib
153
- required_ruby_version: !ruby/object:Gem::Requirement
154
- requirements:
155
- - - ">="
156
- - !ruby/object:Gem::Version
157
- segments:
158
- - 0
159
- version: "0"
160
- required_rubygems_version: !ruby/object:Gem::Requirement
161
- requirements:
162
- - - ">="
163
- - !ruby/object:Gem::Version
164
- segments:
165
- - 0
166
- version: "0"
209
+ required_ruby_version: !ruby/object:Gem::Requirement
210
+ requirements:
211
+ - - ! '>='
212
+ - !ruby/object:Gem::Version
213
+ version: '0'
214
+ required_rubygems_version: !ruby/object:Gem::Requirement
215
+ requirements:
216
+ - - ! '>='
217
+ - !ruby/object:Gem::Version
218
+ version: '0'
167
219
  requirements: []
168
-
169
220
  rubyforge_project:
170
- rubygems_version: 1.3.6
221
+ rubygems_version: 2.0.7
171
222
  signing_key:
172
- specification_version: 3
223
+ specification_version: 4
173
224
  summary: A ruby wrapper for ipmi command line tools that supports ipmitool and freeipmi
174
225
  test_files: []
175
-
226
+ has_rdoc: