Should Redeploy work for Zombie services?: A service is created then the device is moved out of sync, the service is then deleted and it moves to Failed state in CNC, zombie state in NSO.At this point the restconf APIs for redeploy, redeploy-reconcile etc stop working and return a 404 (As the service is in zombie state), and I see these options are gone from NSO UI too. Cleanup works and is able to remove the service from NSO. We think this is expected behavior, by design.Dinesh(submitter) thinks - Although, The sync-from or sync-to operations at the service level actions should bind service config in-line between CNC and NSO and thus the Re-deploy at that point should be successful. Which should also be confirmed with NSO team.Can you comment on what operations are applicable at this state? And if something else should be done to make redeploy work here?
Hi Mukul,Could you help list NSO API's which were used?It would help if it followed the flow as described in the ticket here.Thank youThe ticket started on a different note, and the things mentioned there in the description are not entirely accurate. Please refer to the flow I mentioned below - that's all we want to confirm.A service is created then the device is moved out of sync, the service is then deleted and it moves to Failed state in CNC, zombie state in NSO.The following actions are AWLAYS available from cnc (because we don't have the ability to determine what is applicable) - (out of these clean-up seems to work)-Check-sync -<serviceKey>/check-syncRe-deploy - <serviceKey>/redeployRe-deploy dry-run<serviceKey>/redeploywith dry-run requested in bodyRe-deploy-reconcile<serviceKey>/redeploywith reconcile requested in bodyReactive-redeploy <serviceKey>/reactive-re-deployOf course the above actions fail as the node <serviceKey> above is not available. While other actions like clean-up - (just added example for l2vpn)(Takes service-name in body)but basically all actions which don't use the node itself -are working.Hi Mukul,Referring back to the support email thread from June 10th 2021 with subject line:RESTCONF API's for service level actionsError-recovery and Cleanup are the 2 API's that require service name and not serviceKey.For deletion failure, if the service goes in zombie state, there are 2 options/route to take: 1) Device does not come back online - cleanup NSO using cleanup action 2) Device has come back up and user wants to cleanup the service from device as well - use error recovery actions.Note: Zombie resurrection is not supported. Refer to point 11 on the release notes page:Please refer to the link below as an example for point 2:After the call with Dinesh this morning, he had a question asking what the difference between redeploy and error-recovery:sync-to.The major difference here being:1.) redeploy will only try to push the updated part of the config to the device if there is any modification to begin with using fast map. Thus, if the service is not updated, redeploy will not push any new change on the device.2.) Error-recovery:Sync-to will try to sync the device and push the whole config from NSOs device tree to the actual deviceHeld a call with Mukul as well as Dinesh to explain zombie clean up action. Referenced the support thread from 10th June 2021 to show only Error-recovery and Cleanup actions use "service name" and not "serviceKey". Explained the difference between re-deploy and error-recovery. Closing call was handled by Linh Ly on August 3rd 2021.