X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=system%2FTestPlc.py;h=8671fca976902f2e5af8fceab2e03cf665339eab;hb=17b264d1abdc1e9f7bdfcb093f29432a394a7d68;hp=1236395311fff9d83b0b0cee4e4ebe5fd3888191;hpb=108104742efb8a11d781fdf5cbf0712383ab734b;p=tests.git diff --git a/system/TestPlc.py b/system/TestPlc.py index 1236395..8671fca 100644 --- a/system/TestPlc.py +++ b/system/TestPlc.py @@ -1,4 +1,6 @@ -# $Id$ +# Thierry Parmentelat +# Copyright (C) 2010 INRIA +# import os, os.path import datetime import time @@ -118,7 +120,7 @@ class TestPlc: return single_line.replace(" "+SEP+" "," \\\n").replace(" "+SEPSFA+" "," \\\n") @staticmethod def valid_step (step): - return step != SEP + return step != SEP and step != SEPSFA # turn off the sfa-related steps when build has skipped SFA # this is originally for centos5 as recent SFAs won't build on this platformb @@ -535,8 +537,9 @@ class TestPlc: tmpname='%s.plc-config-tty'%(self.name()) fileconf=open(tmpname,'w') for var in [ 'PLC_NAME', - 'PLC_ROOT_PASSWORD', 'PLC_ROOT_USER', + 'PLC_ROOT_PASSWORD', + 'PLC_SLICE_PREFIX', 'PLC_MAIL_ENABLED', 'PLC_MAIL_SUPPORT_ADDRESS', 'PLC_DB_HOST', @@ -547,7 +550,9 @@ class TestPlc: 'PLC_BOOT_HOST', 'PLC_NET_DNS1', 'PLC_NET_DNS2', - 'PLC_RESERVATION_GRANULARITY',]: + 'PLC_RESERVATION_GRANULARITY', + 'PLC_OMF_ENABLED', + ]: fileconf.write ('e %s\n%s\n'%(var,self.plc_spec[var])) fileconf.write('w\n') fileconf.write('q\n') @@ -663,8 +668,8 @@ class TestPlc: YEAR = 365*24*3600 @staticmethod - def translate_timestamp (start,timestamp): - if timestamp < TestPlc.YEAR: return start+timestamp + def translate_timestamp (start,grain,timestamp): + if timestamp < TestPlc.YEAR: return start+timestamp*grain else: return timestamp @staticmethod @@ -675,8 +680,9 @@ class TestPlc: "create leases (on reservable nodes only, use e.g. run -c default -c resa)" now=int(time.time()) grain=self.apiserver.GetLeaseGranularity(self.auth_root()) - round_time=(now/grain)*grain - start=round_time+grain + print 'API answered grain=',grain + start=(now/grain)*grain + start += grain # find out all nodes that are reservable nodes=self.all_reservable_nodenames() if not nodes: @@ -688,8 +694,8 @@ class TestPlc: for lease_spec in self.plc_spec['leases']: # skip the ones that come with a null slice id if not lease_spec['slice']: continue - lease_spec['t_from']=TestPlc.translate_timestamp(start,lease_spec['t_from']) - lease_spec['t_until']=TestPlc.translate_timestamp(start,lease_spec['t_until']) + lease_spec['t_from']=TestPlc.translate_timestamp(start,grain,lease_spec['t_from']) + lease_spec['t_until']=TestPlc.translate_timestamp(start,grain,lease_spec['t_until']) lease_addition=self.apiserver.AddLeases(self.auth_root(),nodes, lease_spec['slice'],lease_spec['t_from'],lease_spec['t_until']) if lease_addition['errors']: @@ -902,11 +908,11 @@ class TestPlc: def nodes_ssh_debug(self): "Tries to ssh into nodes in debug mode with the debug ssh key" - return self.check_nodes_ssh(debug=True,timeout_minutes=30,silent_minutes=5) + return self.check_nodes_ssh(debug=True,timeout_minutes=10,silent_minutes=5) def nodes_ssh_boot(self): "Tries to ssh into nodes in production mode with the root ssh key" - return self.check_nodes_ssh(debug=False,timeout_minutes=30,silent_minutes=15) + return self.check_nodes_ssh(debug=False,timeout_minutes=40,silent_minutes=15) @node_mapper def init_node (self): @@ -1069,7 +1075,7 @@ class TestPlc: tmpname='%s.sfa-config-tty'%(self.name()) fileconf=open(tmpname,'w') for var in [ 'SFA_REGISTRY_ROOT_AUTH', - 'SFA_REGISTRY_LEVEL1_AUTH', +# 'SFA_REGISTRY_LEVEL1_AUTH', 'SFA_REGISTRY_HOST', 'SFA_AGGREGATE_HOST', 'SFA_SM_HOST', @@ -1078,7 +1084,8 @@ class TestPlc: 'SFA_PLC_DB_HOST', 'SFA_PLC_DB_USER', 'SFA_PLC_DB_PASSWORD', - 'SFA_PLC_URL']: + 'SFA_PLC_URL', + ]: fileconf.write ('e %s\n%s\n'%(var,self.plc_spec['sfa'][var])) fileconf.write('w\n') fileconf.write('R\n')