sigs.k8s.io/cluster-api-provider-azure@v1.14.3/docs/proposals/images/async-delete.plantuml (about)

     1  @startuml
     2  title Figure 2. Azure service async delete
     3  state longrunningopinprogress <<choice>>
     4  
     5  [*]     --> longrunningopinprogress : start Delete
     6  longrunningopinprogress --> GetResultIfDone   : long running operation\nalready in progress
     7  GetResultIfDone : fetch the future data from the scope
     8  GetResultIfDone : check if future is done
     9  
    10  GetResultIfDone --> [*] : requeue if not done
    11  GetResultIfDone --> UpdateStatus : done
    12  UpdateStatus : update the object conditions
    13  UpdateStatus --> [*]
    14  
    15  longrunningopinprogress --> Delete  : no long running operation\n in progress
    16  Delete : DELETE the resource from Azure
    17  Delete : wait for the operation to complete
    18  Delete : timeout after x seconds
    19  
    20  Delete --> ResetLongRunningState : DELETE operation completes \n before timeout
    21  ResetLongRunningState : set the long running operation state to nil
    22  ResetLongRunningState --> UpdateStatus
    23  
    24  Delete --> StoreLongRunningState : DELETE operation does not\n complete before timeout
    25  StoreLongRunningState: store the future in long running operation state
    26  StoreLongRunningState --> UpdateStatus
    27  
    28  @enduml