api_options = {}
api_options ['call_id'] = unique_call_id()
+
+ # set the requtested rspec version
+ version_manager = VersionManager()
+ rspec_version = version_manager._get_version('geni', '3.0').to_dict()
+ api_options['geni_rspec_version'] = rspec_version
result = server.Provision([slice_urn], creds, api_options)
value = ReturnValue.get_value(result)
if self.options.raw:
# make sure geni_rspec_version is specified in options
if 'geni_rspec_version' not in options:
msg = 'geni_rspec_version is required and must be set in options struct'
- raise SfaInvalidArgument('geni_rspec_version', msg
+ raise SfaInvalidArgument(msg, 'geni_rspec_version')
# make sure we support the requested rspec version
version_manager = VersionManager()
- if not version_manager.get(options['geni_rspec_version']):
+ rspec_version = version_manager.get_version(options['geni_rspec_version'])
+ if not rspec_version:
raise InvalidRSpecVersion(options['geni_rspec_version'])
return self.driver.provision(xrns, options)
sliver_hrn = "%s.%s" % (self.driver.hrn, instance.id)
sliver_ids.append(Xrn(sliver_hrn, type='sliver').urn)
SliverAllocation.set_allocations(sliver_ids, 'geni_provisioned')
-
- return self.describe(urns, options=options)
+ version_manager = VersionManager()
+ rspec_version = version_manager.get_version(options['geni_rspec_version'])
+ return self.describe(urns, rspec_version, options=options)
def delete (self, urns, options={}):
# collect sliver ids so we can update sliver allocation states after