# $URL$
"""
-Scan the VINI Central database and create topology "rspec" attributes for
+Scan the VINI Central database and create topology "rspec" tags for
slices that have an EGRE key. This script to be run from a cron job.
"""
adj_matrix = get_adjacency_matrix(links)
for slice in GetSlices():
- # Create dictionary of the slice's attributes
+ # Create dictionary of the slice's tags
attrs ={}
topo_attr = {}
- for attribute in GetSliceAttributes(slice['slice_attribute_ids']):
- attrs[attribute['name']] = attribute['slice_attribute_id']
- if attribute['name'] == 'topo_rspec' and attribute['node_id']:
- topo_attr[attribute['node_id']] = attribute['slice_attribute_id']
+ for tag in GetSliceTags(slice['slice_tag_ids']):
+ attrs[tag['tagname']] = tag['slice_tag_id']
+ if tag['tagname'] == 'topo_rspec' and tag['node_id']:
+ topo_attr[tag['node_id']] = tag['slice_tag_id']
if dryrun and slice['name'] == 'pl_trellis':
attrs['egre_key'] = 101
if dryrun:
print node, topo_str
elif node in topo_attr:
- UpdateSliceAttribute(topo_attr[node], topo_str)
+ UpdateSliceTag(topo_attr[node], topo_str)
del topo_attr[node]
else:
id = slice['slice_id']
- AddSliceAttribute(id, 'topo_rspec', topo_str, node)
+ AddSliceTag(id, 'topo_rspec', topo_str, node)
if dryrun:
print hosts
elif 'hosts' in attrs:
- UpdateSliceAttribute(attrs['hosts'], hosts)
+ UpdateSliceTag(attrs['hosts'], hosts)
else:
id = slice['slice_id']
- AddSliceAttribute(id, 'hosts', hosts)
+ AddSliceTag(id, 'hosts', hosts)
else:
if dryrun:
print "No EGRE key for %s" % slice['name']
if not dryrun:
for node in topo_attr:
- DeleteSliceAttribute(topo_attr[node])
+ DeleteSliceTag(topo_attr[node])