moob 0.3.6 → 0.3.7

Sign up to get free protection for your applications and to get access to all the features.
data/lib/moob.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Moob
2
- VERSION = [0,3,6]
2
+ VERSION = [0,3,7]
3
3
 
4
4
  class ResponseError < Exception
5
5
  def initialize response
data/lib/moob/baselom.rb CHANGED
@@ -17,8 +17,8 @@ class Moob::BaseLom
17
17
  @session.headers['User-Agent'] = 'Mozilla/5.0 (Macintosh; '\
18
18
  'Intel Mac OS X 10.7; rv:5.0.1) Gecko/20100101 Firefox/5.0.1'
19
19
  @session.base_url = "#{@transport}://#{hostname}/"
20
- @session.connect_timeout = 10_000
21
- @session.timeout = 10_000
20
+ @session.connect_timeout = 30
21
+ @session.timeout = 30
22
22
  @session.insecure = true
23
23
  @session.default_response_charset = 'ISO-8859-1'
24
24
  end
data/lib/moob/idrac6.rb CHANGED
@@ -17,6 +17,7 @@ class Idrac6 < BaseLom
17
17
  v6DHCPEnabled v6DHCPServers v6DNS1 v6DNS2
18
18
  v6SiteLocal v6SiteLocal3 v6SiteLocal4 v6SiteLocal5 v6SiteLocal6 v6SiteLocal7 v6SiteLocal8
19
19
  v6SiteLocal9 v6SiteLocal10 v6SiteLocal11 v6SiteLocal12 v6SiteLocal13 v6SiteLocal14 v6SiteLocal15
20
+ ipmiLAN ipmiMinPriv
20
21
  ]
21
22
 
22
23
  def initialize hostname, options = {}
@@ -61,7 +62,7 @@ class Idrac6 < BaseLom
61
62
  raise ResponseError.new idx unless idx.status == 200
62
63
 
63
64
  idx.body =~ /var DnsName += +"([^"]+)"/
64
- raise "Couldn't find the DNS name" unless $&
65
+ raise "Couldn't find the DNS name -- is the iDRAC running firmware 1.50 or higher?" unless $&
65
66
  dns_name = $1
66
67
 
67
68
  idx.body =~ /var sysNameStr += +"([^"]+)"/
@@ -149,5 +150,13 @@ class Idrac6 < BaseLom
149
150
  end
150
151
  end]
151
152
  end
153
+
154
+ action :enable_ipmi, 'Enable IPMI over LAN (on LOM port)'
155
+ def enable_ipmi
156
+ req = @session.post 'data?set=ipmiLAN:1', {}
157
+ raise ResponseError.new req unless req.status == 200
158
+ return nil
159
+ end
160
+
152
161
  end
153
162
  end
data/lib/moob/idrac7.rb CHANGED
@@ -17,6 +17,7 @@ class Idrac7 < BaseLom
17
17
  v6DHCPEnabled v6DHCPServers v6DNS1 v6DNS2
18
18
  v6SiteLocal v6SiteLocal3 v6SiteLocal4 v6SiteLocal5 v6SiteLocal6 v6SiteLocal7 v6SiteLocal8
19
19
  v6SiteLocal9 v6SiteLocal10 v6SiteLocal11 v6SiteLocal12 v6SiteLocal13 v6SiteLocal14 v6SiteLocal15
20
+ ipmiLAN ipmiMinPriv ipmiKey
20
21
  ]
21
22
 
22
23
  def initialize hostname, options = {}
@@ -169,5 +170,13 @@ class Idrac7 < BaseLom
169
170
  end
170
171
  end]
171
172
  end
173
+
174
+ action :enable_ipmi, 'Enable IPMI over LAN (on LOM port)'
175
+ def enable_ipmi
176
+ req = @session.post 'data?set=ipmiLAN:1', {}
177
+ raise ResponseError.new req unless req.status == 200
178
+ return nil
179
+ end
180
+
172
181
  end
173
182
  end
metadata CHANGED
@@ -1,88 +1,109 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: moob
3
- version: !ruby/object:Gem::Version
4
- version: 0.3.6
5
- prerelease:
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 3
9
+ - 7
10
+ version: 0.3.7
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Pierre Carrier
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2012-09-28 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2013-01-22 00:00:00 +00:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
15
22
  name: patron
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: 0.4.14
22
- type: :runtime
23
23
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
- requirements:
26
+ requirements:
27
27
  - - ~>
28
- - !ruby/object:Gem::Version
28
+ - !ruby/object:Gem::Version
29
+ hash: 19
30
+ segments:
31
+ - 0
32
+ - 4
33
+ - 14
29
34
  version: 0.4.14
30
- - !ruby/object:Gem::Dependency
31
- name: json
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ~>
36
- - !ruby/object:Gem::Version
37
- version: 1.5.3
38
35
  type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: json
39
39
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
41
  none: false
42
- requirements:
42
+ requirements:
43
43
  - - ~>
44
- - !ruby/object:Gem::Version
44
+ - !ruby/object:Gem::Version
45
+ hash: 5
46
+ segments:
47
+ - 1
48
+ - 5
49
+ - 3
45
50
  version: 1.5.3
51
+ type: :runtime
52
+ version_requirements: *id002
46
53
  description: Control systems using Web-based out-of-band managers without a browser
47
- email:
54
+ email:
48
55
  - pierre@spotify.com
49
- executables:
56
+ executables:
50
57
  - moob
51
58
  extensions: []
59
+
52
60
  extra_rdoc_files: []
53
- files:
61
+
62
+ files:
54
63
  - bin/moob
55
64
  - lib/moob.rb
56
65
  - lib/moob/baselom.rb
57
- - lib/moob/idrac7.rb
58
- - lib/moob/ibmeserver.rb
59
66
  - lib/moob/sunilom.rb
67
+ - lib/moob/ibmeserver.rb
60
68
  - lib/moob/megatrends.rb
69
+ - lib/moob/idrac7.rb
61
70
  - lib/moob/idrac6.rb
62
71
  - COPYING
72
+ has_rdoc: true
63
73
  homepage: https://github.com/spotify/moob
64
- licenses:
74
+ licenses:
65
75
  - ISC
66
76
  post_install_message:
67
77
  rdoc_options: []
68
- require_paths:
78
+
79
+ require_paths:
69
80
  - lib
70
- required_ruby_version: !ruby/object:Gem::Requirement
81
+ required_ruby_version: !ruby/object:Gem::Requirement
71
82
  none: false
72
- requirements:
73
- - - ! '>='
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- required_rubygems_version: !ruby/object:Gem::Requirement
83
+ requirements:
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ hash: 3
87
+ segments:
88
+ - 0
89
+ version: "0"
90
+ required_rubygems_version: !ruby/object:Gem::Requirement
77
91
  none: false
78
- requirements:
79
- - - ! '>='
80
- - !ruby/object:Gem::Version
92
+ requirements:
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ hash: 31
96
+ segments:
97
+ - 1
98
+ - 2
99
+ - 0
81
100
  version: 1.2.0
82
101
  requirements: []
102
+
83
103
  rubyforge_project: moob
84
- rubygems_version: 1.8.23
104
+ rubygems_version: 1.3.7
85
105
  signing_key:
86
106
  specification_version: 3
87
107
  summary: Manage Out-Of-Band!
88
108
  test_files: []
109
+