X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=system%2FTestNode.py;h=dcab9ddc6d24e7b7814bbefac8466e8473aa2c12;hb=daa6101bf7c504d89de2eb6bbd06821e2f550539;hp=7134cc2f56ef05b943724a7c94fe2557ab726638;hpb=b9e119571675a2eda425baf89798ce6261fb48d2;p=tests.git diff --git a/system/TestNode.py b/system/TestNode.py index 7134cc2..dcab9dd 100644 --- a/system/TestNode.py +++ b/system/TestNode.py @@ -7,6 +7,24 @@ import utils from TestUser import TestUser from TestBoxQemu import TestBoxQemu from TestSsh import TestSsh +from Completer import CompleterTask + +class CompleterTaskNodeSsh (CompleterTask): + def __init__ (self, hostname, qemuname, local_key, command=None,boot_state="boot", expected=True, dry_run=False): + self.hostname=hostname + self.qemuname=qemuname + self.boot_state=boot_state + self.local_key=local_key + self.command=command if command is not None else "hostname;uname -a" + self.expected=expected + self.dry_run = dry_run + def run (self, silent): + command = TestSsh (self.hostname,key=self.local_key).actual_command(self.command) + retcod=utils.system (command, silent=silent, dry_run=self.dry_run) + if self.expected: return retcod==0 + else: return retcod !=0 + def failure_message (self): + return "Cannot reach %s @ %s in %s mode"%(self.hostname, self.qemuname, self.boot_state) class TestNode: @@ -308,7 +326,7 @@ class TestNode: return test_ssh.run ("rpm -q --quiet libvirt-client")==0 def _check_system_slice (self, slicename,dry_run=False): - sitename=self.test_plc.plc_spec['PLC_SLICE_PREFIX'] + sitename=self.test_plc.plc_spec['settings']['PLC_SLICE_PREFIX'] vservername="%s_%s"%(sitename,slicename) test_ssh=self.create_test_ssh() if self.has_libvirt():