user_data += "\n"
return user_data
-def instance_to_sliver(instance, slice_xrn=None):
- sliver_id = None
+def instance_to_sliver(instance, xrn=None):
+ sliver_urn = None
if slice_xrn:
- xrn = Xrn(slice_xrn, 'slice')
- sliver_id = xrn.get_sliver_id(instance.project_id, instance.hostname, instance.id)
+ sliver_xrn = Xrn(xrn=slice_xrn, type='slice', id=instance.id).get_urn()
- sliver = Sliver({'slice_id': sliver_id,
+ sliver = Sliver({'slice_id': sliver_urn,
'name': instance.name,
'type': instance.name,
'cpus': str(instance.vcpus),
return {}
- def get_rspec(self, slice_xrn=None, version=None, options={}):
+ def list_resources(self, version=None, options={}):
version_manager = VersionManager()
version = version_manager.get_version(version)
- if not slice_xrn:
- rspec_version = version_manager._get_version(version.type, version.version, 'ad')
- rspec = self.get_aggregate_rspec(rspec_version, options)
- else:
- rspec_version = version_manager._get_version(version.type, version.version, 'manifest')
- rspec = self.get_slice_rsepc(slice_xrn, rspec_version, options)
-
- return rspec
-
- def get_aggregate_rspec(self, version, options={}):
+ rspec_version = version_manager._get_version(version.type, version.version, 'ad')
rspec = RSpec(version=version, user_options=options)
nodes = self.get_aggregate_nodes()
rspec.version.add_nodes(nodes)
return rspec.toxml()
- def get_slice_rspec(self, xrn, version, options={}):
+ def describe(self, urns, version=None, options={}):
+ version_manager = VersionManager()
+ version = version_manager.get_version(version)
+ rspec_version = version_manager._get_version(version.type, version.version, 'manifest')
rspec = RSpec(version=version, user_options=options)
nodes = self.get_slice_nodes(slice_xrn)
rspec.version.add_nodes(nodes)
- return rspec.toxml()
+ result = {'geni_urn': '',
+ 'geni_rspec': rspec.toxml(),
+ 'geni_slivers': []}
+
+ return result
def get_slice_nodes(self, slice_xrn):
# update nova connection