-from types import StringTypes
from collections import defaultdict
from sfa.util.sfatime import utcparse, datetime_to_epoch
from sfa.rspecs.rspec import RSpec
-from sfa.nitos.nitosxrn import NitosXrn, hrn_to_nitos_slicename, xrn_to_hostname
+from sfa.nitos.nitosxrn import NitosXrn, hrn_to_nitos_slicename, xrn_to_hostname, xrn_to_channel
MAXINT = 2L**31-1
requested_nodes.remove(reserved_nodes_by_id[reservation_id])
added_nodes = requested_nodes
- print "NODES: \nAdded: %s \nDeleted: %s\nKept: %s" %(added_nodes,deleted_nodes_id,kept_nodes_id)
try:
deleted=self.driver.shell.releaseNodes({'reservation_ids': deleted_nodes_id})
slice_name = hrn_to_nitos_slicename(channel['slice_id'])
if slice_name != slice['slice_name']:
continue
- channel_num = channel['channel_num']
+ channel_num = xrn_to_channel(channel['component_id'])
nitos_channel = self.driver.filter_nitos_results(nitos_channels, {'channel': channel_num})[0]
# fill the requested channel with nitos ids
requested_channel['slice_id'] = slice['slice_id']
requested_channels.remove(reserved_channels_by_id[reservation_id])
added_channels = requested_channels
- print "CHANNELS: \nAdded: %s \nDeleted: %s\nKept: %s" %(added_channels,deleted_channels_id,kept_channels_id)
try:
deleted=self.driver.shell.releaseChannels({'reservation_ids': deleted_channels_id})
- def verify_slice(self, slice_hrn, slice_record, sfa_peer, options={}):
+ def verify_slice(self, slice_hrn, slice_record, sfa_peer, options=None):
+ if options is None: options={}
slicename = hrn_to_nitos_slicename(slice_hrn)
slices = self.driver.shell.getSlices({}, [])
slices = self.driver.filter_nitos_results(slices, {'slice_name': slicename})
return slice
- def verify_users(self, slice_hrn, slice_record, users, sfa_peer, options={}):
+ def verify_users(self, slice_hrn, slice_record, users, sfa_peer, options=None):
+ if options is None: options={}
# get slice info
slicename = hrn_to_nitos_slicename(slice_hrn)
slices = self.driver.shell.getSlices({}, [])
slice = self.driver.filter_nitos_results(slices, {'slice_name': slicename})[0]
- print slices
-
+ added_users = []
#get users info
users_info = []
for user in users:
if not nitos_users:
# create the user
- added_users = []
- user_id = self.driver.shell.addUsers({'username': email.split('@')[0], 'email': email})
+ user_id = self.driver.shell.addUser({'username': email.split('@')[0], 'email': email})
added_users.append(user_id)
# add user keys
for key in user['keys']:
- self.driver.shell.addUserKey({'user_id': user_id, 'key': key})
+ self.driver.shell.addUserKey({'user_id': user_id, 'key': key, 'slice_id': slice['slice_id']})
# add the user to the slice
self.driver.shell.addUserToSlice({'slice_id': slice['slice_id'], 'user_id': user_id})
else:
return added_users
- def verify_keys(self, persons, users, options={}):
+ def verify_keys(self, persons, users, options=None):
+ if options is None: options={}
# existing keys
key_ids = []
for person in persons: