Class: Consolr::Runners::Ipmitool
- Defined in:
- lib/consolr/runners/ipmitool.rb
Instance Method Summary collapse
- #can_run?(node) ⇒ Boolean
- #console(node) ⇒ Object
- #identify(node) ⇒ Object
-
#initialize(config) ⇒ Ipmitool
constructor
A new instance of Ipmitool.
- #kick(node) ⇒ Object
- #log_clear(node) ⇒ Object
- #log_list(node) ⇒ Object
- #off(node) ⇒ Object
- #on(node) ⇒ Object
- #reboot(node) ⇒ Object
- #sdr(node) ⇒ Object
- #sensors(node) ⇒ Object
- #soft_off(node) ⇒ Object
- #soft_reboot(node) ⇒ Object
- #sol_info(node) ⇒ Object
- #status(node) ⇒ Object
- #verify(node) ⇒ Object
Constructor Details
#initialize(config) ⇒ Ipmitool
Returns a new instance of Ipmitool.
6 7 8 9 10 11 12 |
# File 'lib/consolr/runners/ipmitool.rb', line 6 def initialize config @ipmitool = if config.empty? '/usr/bin/ipmitool' else config end end |
Instance Method Details
#can_run?(node) ⇒ Boolean
14 15 16 17 18 19 20 |
# File 'lib/consolr/runners/ipmitool.rb', line 14 def can_run? node begin not (node.ipmi.address.empty? or node.ipmi.username.empty? or node.ipmi.password.empty?) rescue false end end |
#console(node) ⇒ Object
26 27 28 |
# File 'lib/consolr/runners/ipmitool.rb', line 26 def console node cmd 'sol activate', node end |
#identify(node) ⇒ Object
34 35 36 |
# File 'lib/consolr/runners/ipmitool.rb', line 34 def identify node cmd 'chassis identify', node end |
#kick(node) ⇒ Object
30 31 32 |
# File 'lib/consolr/runners/ipmitool.rb', line 30 def kick node cmd 'sol deactivate', node end |
#log_clear(node) ⇒ Object
46 47 48 |
# File 'lib/consolr/runners/ipmitool.rb', line 46 def log_clear node cmd 'sel clear', node end |
#log_list(node) ⇒ Object
42 43 44 |
# File 'lib/consolr/runners/ipmitool.rb', line 42 def log_list node cmd 'sel list', node end |
#off(node) ⇒ Object
54 55 56 |
# File 'lib/consolr/runners/ipmitool.rb', line 54 def off node cmd 'power off', node end |
#on(node) ⇒ Object
50 51 52 |
# File 'lib/consolr/runners/ipmitool.rb', line 50 def on node cmd 'power on', node end |
#reboot(node) ⇒ Object
62 63 64 |
# File 'lib/consolr/runners/ipmitool.rb', line 62 def reboot node cmd 'power cycle', node end |
#sdr(node) ⇒ Object
38 39 40 |
# File 'lib/consolr/runners/ipmitool.rb', line 38 def sdr node cmd 'sdr elist all', node end |
#sensors(node) ⇒ Object
74 75 76 |
# File 'lib/consolr/runners/ipmitool.rb', line 74 def sensors node cmd 'sensor list', node end |
#soft_off(node) ⇒ Object
58 59 60 |
# File 'lib/consolr/runners/ipmitool.rb', line 58 def soft_off node cmd 'power soft', node end |
#soft_reboot(node) ⇒ Object
66 67 68 |
# File 'lib/consolr/runners/ipmitool.rb', line 66 def soft_reboot node cmd 'power reset', node end |
#sol_info(node) ⇒ Object
78 79 80 |
# File 'lib/consolr/runners/ipmitool.rb', line 78 def sol_info node cmd 'session info active', node end |
#status(node) ⇒ Object
70 71 72 |
# File 'lib/consolr/runners/ipmitool.rb', line 70 def status node cmd 'power status', node end |
#verify(node) ⇒ Object
22 23 24 |
# File 'lib/consolr/runners/ipmitool.rb', line 22 def verify node Net::Ping::External.new(node.ipmi.address).ping? end |