# map all nodes onto the avail. pool from TestMapper import TestMapper from TestPool import TestPool onelab_plcs_pool = [ ( 'vnode%02d.inria.fr'%i, '138.96.250.22%d'%i, 'ab:cd:ef:00:01:%02d'%i) for i in range(1,10) ] site_dict = { 'network_fields:gateway':'138.96.248.250', 'network_fields:network':'138.96.0.0', 'network_fields:broadcast':'138.96.255.255', 'network_fields:netmask':'255.255.0.0', 'network_fields:dns1': '138.96.0.10', 'network_fields:dns2': '138.96.0.11', } def config (plcs, options): test_pool = TestPool (onelab_plcs_pool,options) test_mapper = TestMapper (plcs, options) all_nodenames = test_mapper.node_names() maps = [] for nodename in all_nodenames: (hostname,ip,mac) = test_pool.next_free() node_dict= {'node_fields:hostname':hostname, 'network_fields:ip':ip, # xxx do not et mac as for some reason the qeu nodes don't know about their mac any more #'network_fields:mac':mac, } node_dict.update(site_dict) maps.append ( ( nodename, node_dict) ) plc_map = [ ( '*' , { 'PLC_NET_DNS1' : site_dict [ 'network_fields:dns1' ], 'PLC_NET_DNS2' : site_dict [ 'network_fields:dns2' ], } ) ] return test_mapper.map ({'node': maps, 'plc' : plc_map } )