replace Xrn.get_sliver_id()
[sfa.git] / sfa / openstack / osaggregate.py
index 6e64408..35dcf50 100644 (file)
@@ -36,12 +36,7 @@ def pubkeys_to_user_data(pubkeys):
 
 def instance_to_sliver(instance, slice_xrn=None):
     sliver_id = None
-    if slice_xrn:
-        xrn = Xrn(slice_xrn, 'slice')
-        sliver_id = xrn.get_sliver_id(instance.project_id, instance.hostname, instance.id)
-
-    sliver = Sliver({'slice_id': sliver_id,
-                     'name': instance.name,
+    sliver = Sliver({'name': instance.name,
                      'type': instance.name,
                      'cpus': str(instance.vcpus),
                      'memory': str(instance.ram),
@@ -113,6 +108,8 @@ class OSAggregate:
             flavor = self.driver.shell.nova_manager.flavors.find(id=instance.flavor['id'])
             sliver = instance_to_sliver(flavor)
             rspec_node['slivers'].append(sliver)
+            sliver_xrn = OSXrn(xrn=slice_xrn, type='slice', id=instance.id)
+            rspec_node['sliver_id'] = sliver_xrn.get_urn()
             image = self.driver.shell.image_manager.get_images(id=instance.image['id'])
             if isinstance(image, list) and len(image) > 0:
                 image = image[0]
@@ -139,7 +136,7 @@ class OSAggregate:
                 interface = Interface({'component_id': if_xrn.urn})
                 interface['ips'] =  [{'address': private_ip['addr'],
                                      #'netmask': private_ip['network'],
-                                     'type': private_ip['version']}]
+                                     'type': 'ipv%s' % str(private_ip['version'])}]
                 rspec_node['interfaces'].append(interface) 
             
             # slivers always provide the ssh service