-
Notifications
You must be signed in to change notification settings - Fork 17
deployment lifecycle: deleting #127
Description
Currently the delete of an F5 VNF needs to be done as follows:
[deployment delete start]
delete applications -> sync -> delete sync -> delete cluster -> delete bigips
[deployment delete completed]
The reason why F5::Cm::Sync objects needs to be created and deleted in this process is because when the "deployment delete start" is triggered the applications are deleted the bigips get out of sync. If this sync -> delete sync is not performed this would make fail deleting the deployment because currently F5::Cm::Cluster requires the pair to be in sync before removing the F5::Cm::Cluster resource type.
Please note that in an orchestrator it is not expected that to delete a VNF new resources are created. In the case above this is be the F5::Cm::Sync resource. The deletion of a VNF should just be deleting the resources created following the reverse dependencies graph. In other words, when something fails the orchestrators just try to roll-back the steps performed. In our case the way F5::Cm::Sync and F5:Cm::Cluster operate they just don't allow this.
This problem also happens in the creation of a VNF, this is:
[deployment start]
create bigips -> setup cluster -> deploy applications -> sync -> delete sync
[deployment completed]
In this case the problem lies in that after the cluster is created if something goes wrong while deploying applications then the F5 VNF will not be able to be deleted because F5::Cm::Cluster needs that the units are in sync but the F5::Cm::Sync resource has not been created.
Also note that again the creation the deployment needs to delete resources (F5::Cm::Shync) which is not expected / does not match VNF lifecycle from an orchestrator point of view.