From: Sandrine Avakian Date: Mon, 12 Nov 2012 12:05:53 +0000 (+0100) Subject: Fix sfi.py slices. X-Git-Tag: sfa-2.1-24~3^2~38 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=a58966c75c5d84d35b1338b9f4630331675ec8f1;p=sfa.git Fix sfi.py slices. --- diff --git a/sfa/senslab/config/bash_nukem b/sfa/senslab/config/bash_nukem index 60c6c67c..ff119a25 100755 --- a/sfa/senslab/config/bash_nukem +++ b/sfa/senslab/config/bash_nukem @@ -31,12 +31,12 @@ fi # First restart sfa (prevents stalling when connecting # to the DB and dropping tables) sudo service sfa restart + # Nuke the database sudo sfaadmin.py registry nuke # Drop table in slab_sfa # to avoid duplicates. - psql -d slab_sfa -U sfa -W -q -c "drop table slice_senslab;" @@ -70,8 +70,16 @@ sudo cp $git_local_repo/sfa/senslab/config/$vm/default_config.xml /etc/sfa/defau # sudo cp $git_local_repo/sfa/senslab/config/$vm/site.xml /etc/sfa/site.xml # sudo cp $git_local_repo/sfa/senslab/config/$vm/site_config /etc/sfa/configs/site_config # sudo ln -s ldap_config.py /etc/sfa/ldap_config.py -sudo cp $git_local_repo/sfa/senslab/config/ldap_config.py /etc/sfa/ldap_config.py -sudo cp $git_local_repo/sfa/senslab/config/oar_config.py /etc/sfa/oar_config.py + +#Senslab LDAP and OAR access config files +if [ !-f /etc/sfa/ldap_config.py ] +then + sudo cp $git_local_repo/sfa/senslab/config/ldap_config.py /etc/sfa/ldap_config.py + +if [ !-f /etc/sfa/oar_config.py ] +then + sudo cp $git_local_repo/sfa/senslab/config/oar_config.py /etc/sfa/oar_config.py + sudo service sfa restart # User stuff : clean your folder diff --git a/sfa/senslab/slabdriver.py b/sfa/senslab/slabdriver.py index c5e7a787..ca9b27a9 100644 --- a/sfa/senslab/slabdriver.py +++ b/sfa/senslab/slabdriver.py @@ -844,8 +844,10 @@ class SlabDriver(Driver): #slicerec_dict.update({'node_ids':[lease['reserved_nodes'][n]['hostname'] for n in lease['reserved_nodes']]}) slicerec_dict.update({'list_node_ids':{'hostname':reserved_list}}) slicerec_dict.update({'node_ids':lease['reserved_nodes']}) - slicerec_dict.update(fixed_slicerec_dict) - slicerec_dict.update({'hrn':\ + #If the slice does not belong to senslab: + if fixed_slicerec_dict: + slicerec_dict.update(fixed_slicerec_dict) + slicerec_dict.update({'hrn':\ str(fixed_slicerec_dict['slice_hrn'])}) @@ -876,8 +878,11 @@ class SlabDriver(Driver): if owner == lease['user']: slicerec_dict['oar_job_id'] = lease['lease_id'] reserved_list = [] - for reserved_node in lease['reserved_nodes']: - reserved_list.append(reserved_node['hostname']) + + #for reserved_node in lease['reserved_nodes']: + logger.debug("SLABDRIVER.PY \tGetSlices lease %s " %(lease )) + #reserved_list.append(reserved_node['hostname']) + reserved_list.extend(lease['reserved_nodes']) #slicerec_dict.update({'node_ids':{'hostname':reserved_list}}) #slicerec_dict.update({'node_ids':[lease['reserved_nodes'][n]['hostname'] for n in lease['reserved_nodes']]}) slicerec_dict.update({'node_ids':lease['reserved_nodes']}) @@ -1291,6 +1296,7 @@ class SlabDriver(Driver): try: for rec in recslice_list: record['oar_job_id'].append(rec['oar_job_id']) + record['node_ids'] = [ self.root_auth + hostname for hostname in rec['node_ids']] except KeyError: pass diff --git a/sfa/senslab/slabslices.py b/sfa/senslab/slabslices.py index c63acf41..18891751 100644 --- a/sfa/senslab/slabslices.py +++ b/sfa/senslab/slabslices.py @@ -319,8 +319,8 @@ class SlabSlices: if slices_list: for sl in slices_list: - logger.debug("SLABSLICE \tverify_slice slicename %s sl %s \ - slice_record %s"%(slicename, sl, \ + logger.debug("SLABSLICE \tverify_slice slicename %s slices_list %s sl %s \ + slice_record %s"%(slicename, slices_list,sl, \ slice_record)) sfa_slice = sl sfa_slice.update(slice_record)