X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=pcucontrol%2Freboot.py;h=f7c28101b5f5c3366846ed85ed6408b7cabe10e4;hb=2c5c07d7e0ea8bcf34a2b0de61d1fed47432b82e;hp=d8fdb27d0171ff8128bd163ddc84ba487872de6c;hpb=c40d1a5b09026d2c7b52dfd029326bcaa23dff82;p=pcucontrol.git diff --git a/pcucontrol/reboot.py b/pcucontrol/reboot.py index d8fdb27..f7c2810 100755 --- a/pcucontrol/reboot.py +++ b/pcucontrol/reboot.py @@ -9,10 +9,10 @@ import xml, xmlrpclib import errno, time, traceback import urllib2 import urllib -import threading, popen2 import array, struct import base64 from subprocess import PIPE, Popen +import subprocess import pcucontrol.transports.ssh.pxssh as pxssh import pcucontrol.transports.ssh.pexpect as pexpect import socket @@ -107,6 +107,7 @@ class Transport: HTTP = "http" HTTPS = "https" IPAL = "ipal" + IPMI = "ipmi" DRAC = "drac" AMT = "amt" @@ -119,6 +120,7 @@ class Transport: 443 : HTTPS, 80 : HTTP, 9100 : IPAL, + 623 : IPMI, 16992 : AMT, } @@ -380,7 +382,7 @@ def model_to_object(modelname): print "UNKNOWN model %s"%modelname return Unknown -def reboot_api(node, pcu): +def reboot_api(node, pcu, testrun=False): rb_ret = "" try: @@ -392,7 +394,7 @@ def reboot_api(node, pcu): i = pcu['node_ids'].index(node['node_id']) p = pcu['ports'][i] # reboot - rb_ret = instance.reboot(p, False) + rb_ret = instance.reboot(p, testrun) else: rb_ret = "No modelname in PCU record." # TODO: how to handle the weird, georgetown pcus, the drac faults, and ilo faults