Skip to content
Snippets Groups Projects
Commit a6e8d850 authored by Lluis Gifre Renom's avatar Lluis Gifre Renom
Browse files

Slice component:

- Fixed a slice name overwrite bug
- Corrected slice deletion to support interdomain scenarios
parent 4f8439f6
No related branches found
No related tags found
2 merge requests!142Release TeraFlowSDN 2.1,!119Migration of Interdomain component and OECC/PSC'22 test to Release 2
...@@ -48,7 +48,7 @@ class SliceServiceServicerImpl(SliceServiceServicer): ...@@ -48,7 +48,7 @@ class SliceServiceServicerImpl(SliceServiceServicer):
slice_rw = Slice() slice_rw = Slice()
slice_rw.CopyFrom(request if slice_ro is None else slice_ro) slice_rw.CopyFrom(request if slice_ro is None else slice_ro)
slice_rw.name = request.name if len(request.name) > 0: slice_rw.name = request.name
slice_rw.slice_owner.CopyFrom(request.slice_owner) # pylint: disable=no-member slice_rw.slice_owner.CopyFrom(request.slice_owner) # pylint: disable=no-member
slice_rw.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_PLANNED # pylint: disable=no-member slice_rw.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_PLANNED # pylint: disable=no-member
...@@ -203,30 +203,28 @@ class SliceServiceServicerImpl(SliceServiceServicer): ...@@ -203,30 +203,28 @@ class SliceServiceServicerImpl(SliceServiceServicer):
context_client.close() context_client.close()
return Empty() return Empty()
_slice_rw = Slice()
_slice_rw.CopyFrom(_slice)
_slice_rw.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_DEINIT # pylint: disable=no-member
context_client.SetSlice(_slice_rw)
if is_inter_domain(context_client, _slice.slice_endpoint_ids): if is_inter_domain(context_client, _slice.slice_endpoint_ids):
interdomain_client = InterdomainClient() interdomain_client = InterdomainClient()
slice_id = interdomain_client.DeleteSlice(request) slice_id = interdomain_client.DeleteSlice(request)
#raise NotImplementedError('Delete inter-domain slice')
interdomain_client.close() interdomain_client.close()
else: else:
current_slice = Slice()
current_slice.CopyFrom(_slice)
current_slice.slice_status.slice_status = SliceStatusEnum.SLICESTATUS_DEINIT # pylint: disable=no-member
context_client.SetSlice(current_slice)
if self._slice_grouper.is_enabled: if self._slice_grouper.is_enabled:
ungrouped = self._slice_grouper.ungroup(current_slice) # pylint: disable=unused-variable ungrouped = self._slice_grouper.ungroup(_slice_rw) # pylint: disable=unused-variable
service_client = ServiceClient() service_client = ServiceClient()
for service_id in _slice.slice_service_ids: for service_id in _slice.slice_service_ids:
current_slice = Slice() tmp_slice = Slice()
current_slice.slice_id.CopyFrom(_slice.slice_id) # pylint: disable=no-member tmp_slice.slice_id.CopyFrom(_slice.slice_id) # pylint: disable=no-member
slice_service_id = current_slice.slice_service_ids.add() # pylint: disable=no-member slice_service_id = tmp_slice.slice_service_ids.add() # pylint: disable=no-member
slice_service_id.CopyFrom(service_id) slice_service_id.CopyFrom(service_id)
context_client.UnsetSlice(current_slice) context_client.UnsetSlice(tmp_slice)
service_client.DeleteService(service_id)
service_client.DeleteService(service_id) service_client.close()
service_client.close()
context_client.RemoveSlice(request) context_client.RemoveSlice(request)
context_client.close() context_client.close()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment