'probe_kvm_iptables',
'ping_node', 'ssh_node_debug', 'plcsh_stress_test@1', SEP,
'ssh_node_boot', 'node_bmlogs', 'ssh_slice', 'ssh_slice_basics', 'check_initscripts_ignore', SEP,
- 'ssh_slice_sfa@1', 'sfa_delete_slice@1', 'sfa_delete_user@1', SEPSFA,
+ 'ssh_slice_sfa@1', SEPSFA,
+ 'sfa_rspec_empty@1', 'sfa_allocate_empty@1', 'sfa_provision_empty@1','sfa_check_slice_plc_empty@1', SEPSFA,
+ 'sfa_delete_slice@1', 'sfa_delete_user@1', SEPSFA,
'cross_check_tcp@1', 'check_system_slice', SEP,
+ # for inspecting the slice while it runs the first time
+ #'fail',
# check slices are turned off properly
'empty_slices', 'ssh_slice_off', 'slice_fs_deleted_ignore', SEP,
# check they are properly re-created with the same name
return True
# probing nodes
- def check_nodes_ping(self,timeout_seconds=120,period_seconds=10):
- class CompleterTaskPingNode (CompleterTask):
+ def check_nodes_ping(self, timeout_seconds=240, period_seconds=10):
+ class CompleterTaskPingNode(CompleterTask):
def __init__ (self, hostname):
self.hostname=hostname
- def run(self,silent):
+ def run(self, silent):
command="ping -c 1 -w 1 %s >& /dev/null"%self.hostname
return utils.system (command, silent=silent)==0
def failure_epilogue (self):
"Ping nodes"
return self.check_nodes_ping ()
- def check_nodes_ssh(self,debug,timeout_minutes,silent_minutes,period_seconds=15):
+ def check_nodes_ssh(self, debug, timeout_minutes, silent_minutes, period_seconds=15):
# various delays
timeout = timedelta(minutes=timeout_minutes)
graceout = timedelta(minutes=silent_minutes)
" ".join([ plc.registry_xml_line() for plc in other_plcs ]))
utils.header ("(Over)wrote %s"%reg_fname)
return self.test_ssh.copy_abs(agg_fname,'/%s/etc/sfa/aggregates.xml'%self.vm_root_in_host())==0 \
- and self.test_ssh.copy_abs(reg_fname,'/%s/etc/sfa/registries.xml'%self.vm_root_in_host())==0
+ and self.test_ssh.copy_abs(reg_fname,'/%s/etc/sfa/registries.xml'%self.vm_root_in_host())==0
def sfa_import(self):
"use sfaadmin to import from plc"
self.run_in_guest("rm -rf /root/sfi")
return True
+ def sfa_rspec_empty(self):
+ "expose a static empty rspec (ships with the tests module) in the sfi directory"
+ filename="empty-rspec.xml"
+ overall=True
+ for slice_spec in self.plc_spec['sfa']['auth_sfa_specs']:
+ test_slice=TestAuthSfa(self,slice_spec)
+ in_vm = test_slice.sfi_path()
+ remote="%s/%s"%(self.vm_root_in_host(),in_vm)
+ if self.test_ssh.copy_abs (filename, remote) !=0: overall=False
+ return overall
+
@auth_sfa_mapper
def sfa_register_site (self): pass
@auth_sfa_mapper
@auth_sfa_mapper
def sfa_allocate(self): pass
@auth_sfa_mapper
+ def sfa_allocate_empty(self): pass
+ @auth_sfa_mapper
def sfa_provision(self): pass
@auth_sfa_mapper
+ def sfa_provision_empty(self): pass
+ @auth_sfa_mapper
def sfa_check_slice_plc(self): pass
@auth_sfa_mapper
+ def sfa_check_slice_plc_empty(self): pass
+ @auth_sfa_mapper
def sfa_update_slice(self): pass
@auth_sfa_mapper
def sfa_remove_user_from_slice(self): pass
# convenience for debugging the test logic
def yes (self): return True
def no (self): return False
+ def fail (self): return False