--- /dev/null
+@startuml
+
+[*] --> UNDEPLOYED:UNDEPLOYED:NO_ERROR: Create
+UNDEPLOYED:UNDEPLOYED:NO_ERROR --> [*]: Delete
+UNDEPLOYED:UNDEPLOYED:NO_ERROR --> DEPLOYING:DEPLOYING: Deploy
+DEPLOYING:DEPLOYING --> DEPLOYED:DEPLOYED:NO_ERROR: Deployed
+DEPLOYING:DEPLOYING --> UNDEPLOYED:DEPLOYING:FAILED: Deploy failed
+DEPLOYING:DEPLOYING --> DEPLOYING:DEPLOYING:TIMEOUT: Deploy timeout
+DEPLOYING:DEPLOYING:TIMEOUT --> DEPLOYED:DEPLOYED:NO_ERROR: Deployed
+DEPLOYING:DEPLOYING:TIMEOUT --> UNDEPLOYED:DEPLOYING:FAILED: Deploy failed
+DEPLOYING:DEPLOYING:TIMEOUT --> DEPLOYING:DEPLOYING: Deploy
+UNDEPLOYED:DEPLOYING:FAILED --> DEPLOYING:DEPLOYING: Deploy
+UNDEPLOYED:DEPLOYING:FAILED --> UNDEPLOYING:UNDEPLOYING: Undeploy
+DEPLOYED:DEPLOYED:NO_ERROR --> UNDEPLOYING:UNDEPLOYING: Undeploy
+UNDEPLOYING:UNDEPLOYING --> UNDEPLOYED:UNDEPLOYED:NO_ERROR: Undeployed
+UNDEPLOYING:UNDEPLOYING --> DEPLOYED:UNDEPLOYING:FAILED: Undeploy failed
+UNDEPLOYING:UNDEPLOYING --> UNDEPLOYING:UNDEPLOYING:TIMEOUT: Undeploy timeout
+DEPLOYED:UNDEPLOYING:FAILED --> UNDEPLOYING:UNDEPLOYING: Undeploy
+DEPLOYED:UNDEPLOYING:FAILED --> DEPLOYING:DEPLOYING: Deploy
+UNDEPLOYING:UNDEPLOYING:TIMEOUT --> UNDEPLOYED:UNDEPLOYED:NO_ERROR: Undeployed
+UNDEPLOYING:UNDEPLOYING:TIMEOUT --> DEPLOYED:UNDEPLOYING:FAILED: Undeploy failed
+UNDEPLOYING:UNDEPLOYING:TIMEOUT --> UNDEPLOYING:UNDEPLOYING: Undeploy
+UNDEPLOYING:UNDEPLOYING:TIMEOUT --> DEPLOYING:DEPLOYING: Deploy
+
+@enduml