isle/docs/dev/daemon-process-tree.plantuml

42 lines
1.5 KiB
Plaintext
Raw Normal View History

@startuml
hide empty description
state "./isle daemon -c ./daemon.yml" as init
state AppDir {
note "All relative paths are relative to the root of the AppDir" as N1
state "./AppRun" as AppRun {
AppRun : * Set PATH to APPDIR/bin
}
2022-10-29 22:38:26 +00:00
state "./bin/entrypoint daemon -c ./daemon.yml" as entrypoint {
entrypoint : * Create runtime dir at $_RUNTIME_DIR_PATH
entrypoint : * Lock runtime dir
2022-10-16 13:52:15 +00:00
entrypoint : * Merge given and default daemon.yml files
entrypoint : * Copy bootstrap.yml into $_DATA_DIR_PATH, if it's not there
entrypoint : * Merge daemon.yml config into bootstrap.yml
2022-10-29 22:38:26 +00:00
entrypoint : * Create $_RUNTIME_DIR_PATH/dnsmasq.conf
entrypoint : * Create $_RUNTIME_DIR_PATH/nebula.yml
entrypoint : * Create $_RUNTIME_DIR_PATH/garage-N.toml\n (one per storage allocation)
entrypoint : * Run child processes
2022-10-29 22:38:26 +00:00
entrypoint : * (in the background) Updates garage cluster layout
entrypoint : * (in the background) Stores host info in global bucket
}
init --> AppRun : exec
AppRun --> entrypoint : exec
state "./bin/dnsmasq -d -C $_RUNTIME_DIR_PATH/dnsmasq.conf" as dnsmasq
2022-10-29 22:38:26 +00:00
entrypoint --> dnsmasq : child
state "./bin/nebula -config $_RUNTIME_DIR_PATH/nebula.yml" as nebula
2022-10-29 22:38:26 +00:00
entrypoint --> nebula : child
2022-10-29 22:38:26 +00:00
state "./bin/garage -c $_RUNTIME_DIR_PATH/garage-N.toml server" as garage
entrypoint --> garage : child (one per storage allocation)
}
@enduml