X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=system%2FTestSlice.py;h=f5049d3b471a8b90ed65975cd95a49a2ff2f13e9;hb=55177a1292ca841809a3194015d32f76f1f0420c;hp=4b40bf0b04ffebe2b8fa061611805c6775fd326f;hpb=4d1e9c36b4a05066d00628ed2a9e9d6d391d149a;p=tests.git diff --git a/system/TestSlice.py b/system/TestSlice.py index 4b40bf0..f5049d3 100644 --- a/system/TestSlice.py +++ b/system/TestSlice.py @@ -235,21 +235,15 @@ class TestSlice: # use constant admin key local_key = "keys/key_admin.rsa" node_infos = self.test_plc.all_node_infos() - return [ CompleterTaskNodeSsh (nodename, qemuname, local_key, expected=expected, - command="ls -d /vservers/%s"%self.name()) \ - for (nodename,qemuname) in node_infos ] - - overall=True - for nodename in self.slice_spec['nodenames']: - node_spec=self.test_site.locate_node(nodename) - test_node=TestNode(self.test_plc,self.test_site,node_spec) - test_node_ssh=test_node.create_test_ssh() - command="ls /vservers/%s"%self.name() - full_command = test_node_ssh.actual_command(command) - retcod=utils.system(full_command,silent=True) - # we expect the fs to be present, retcod should be 0 - if expected: fine=(retcod==0) - else: fine=(retcod!=0) - if not fine: overall=False - return overall - + rootfs="/vservers/%s"%self.name() + if expected: + failure_message = "Could not stat %s"%rootfs + else: + failure_message = "Sliver rootfs still present in %s"%rootfs + class CompleterTaskRootfs (CompleterTaskNodeSsh): + def __init__ (self, nodename, qemuname): + CompleterTaskNodeSsh.__init__(self,nodename, qemuname, local_key, expected=expected, + message=failure_message, command="ls -d %s"%rootfs) + def failure_epilogue (self): + utils.system(self.test_ssh.actual_command("ls -l %s; du -hs %s"%(rootfs,rootfs),dry_run=self.dry_run)) + return [ CompleterTaskRootfs (nodename, qemuname) for (nodename,qemuname) in node_infos ]