1
0
mirror of https://github.com/OpenNebula/one.git synced 2025-01-11 05:17:41 +03:00
one/share/doc/states/states-simple.dot
2016-05-25 12:14:52 +02:00

108 lines
3.6 KiB
Plaintext

digraph OpenNebula {
graph [
nodesep= 0.6,
ratio=0.6,
pad=1,
];
node [fontname="Helvetica"];
edge [fontname="Menlo"];
user [
fillcolor="black",
style="filled", shape="box",
fontcolor="white", fontsize= "24.0"];
ANY [ shape="box", fontsize= "24.0" ];
"ANY " [ shape="box", fontsize= "24.0" ];
#subgraph { rank = min; user}
#subgraph { rank = same; pending; hold; color="white"}
subgraph { rank = same; user; pending; prolog; boot; color="white"}
subgraph { rank = same; save; shutdown; unknown; hotplug; snapshot;
color="white" }
subgraph { rank = same; epilog; migrate; ANY; color="white" }
subgraph { rank = max; suspended; done; failure; stopped; poweroff; undeployed; color="white" }
# create
user -> pending [label="instantiate"];
# deploy
pending -> prolog [label="deploy"];
prolog -> boot [style="dashed", color="navy", fontcolor="navy"];
boot -> running [style="dashed", color="navy", fontcolor="navy"];
# terminate
#running -> shutdown [label="terminate [--hard]"];
shutdown -> epilog [label="undeploy/\nterminate [--hard]", style="dashed", color="navy", fontcolor="navy"];
epilog -> done [label="terminate [--hard]", style="dashed", color="navy", fontcolor="navy"];
# poweroff
running -> shutdown [label="poweroff/\nundeploy/\nterminate [--hard]"];
shutdown -> poweroff [label="poweroff", style="dashed", color="navy", fontcolor="navy"];
# livemigrate
running -> migrate [label="migrate\n[--live]"];
migrate -> running [label="migrate\n--live", style="dashed", color="navy", fontcolor="navy"];
# migrate
#running -> save [label="migrate"];
save -> migrate [label="migrate", style="dashed", color="navy", fontcolor="navy"];
migrate -> boot [label="migrate", style="dashed", color="navy", fontcolor="navy"];
# hold
pending -> hold [label="hold"];
# release
hold -> pending [label="release"];
# stop
running -> save [label="stop/\nsuspend/\nmigrate"];
save -> epilog [label="stop", style="dashed", color="navy", fontcolor="navy"];
epilog -> stopped [label="stop", style="dashed", color="navy", fontcolor="navy"];
# undeploy
#running -> shutdown [label="undeploy"];
#shutdown -> epilog [label="undeploy", style="dashed", color="navy", fontcolor="navy"];
epilog -> undeployed [label="undeploy", style="dashed", color="navy", fontcolor="navy"];
# suspend
#running -> save [label="suspend"];
save -> suspended [label="suspend", style="dashed", color="navy", fontcolor="navy"];
# resume
stopped -> pending [label="resume"];
undeployed -> pending [label="resume"];
suspended -> boot [label="resume"];
poweroff -> boot [label="resume"];
# delete
ANY -> epilog [label="terminate\n[--hard]"];
# restart
unknown -> boot [label="boot"];
boot -> boot [label="boot"];
# reboot
running -> running [label="reboot"];
# disk-attach nic-attach
# running -> hotplug [label="disk / nic -\n attach / detach"]
running -> hotplug [label="disk / nic\nattach"]
hotplug -> running [style="dashed", color="navy", fontcolor="navy"];
# snapshot
running -> snapshot [label="snapshot-*"]
snapshot -> running [style="dashed", color="navy", fontcolor="navy"];
# failures and misc.
"ANY " -> failure [style="dotted", color="red"];
running -> unknown [style="dotted", color="red"];
#unknown -> running [style="dashed", color="navy", fontcolor="navy"];
}