From cf52cbff52cbee789d0fb12c49992a831260095f Mon Sep 17 00:00:00 2001 From: Brian Picciano Date: Sun, 16 Oct 2022 15:52:15 +0200 Subject: [PATCH] Update daemon process tree diagram --- docs/dev/daemon-process-tree.plantuml | 29 +++++++------- docs/dev/daemon-process-tree.svg | 56 +++++++++++++-------------- 2 files changed, 41 insertions(+), 44 deletions(-) diff --git a/docs/dev/daemon-process-tree.plantuml b/docs/dev/daemon-process-tree.plantuml index 5de49a6..09b108c 100644 --- a/docs/dev/daemon-process-tree.plantuml +++ b/docs/dev/daemon-process-tree.plantuml @@ -11,10 +11,12 @@ state AppDir { AppRun : * Set PATH to APPDIR/bin } - state "./bin/entrypoint" as entrypoint { - entrypoint : * Merge given and default daemon.yml files + state "./bin/cryptic-net-main entrypoint daemon -c ./daemon.yml" as entrypoint { entrypoint : * Create runtime dir at $_RUNTIME_DIR_PATH entrypoint : * Lock runtime dir + entrypoint : * Merge given and default daemon.yml files + entrypoint : * Copy bootstrap.tgz into $_DATA_DIR_PATH, if it's not there + entrypoint : * Merge daemon.yml config into bootstrap.tgz entrypoint : * Run child processes } @@ -30,39 +32,36 @@ state AppDir { entrypoint --> dnsmasqEntrypoint : child dnsmasqEntrypoint --> dnsmasq : exec - state "./bin/nebula-entrypoint" as nebulaEntrypoint { + state "./bin/cryptic-net-main nebula-entrypoint" as nebulaEntrypoint { nebulaEntrypoint : * Create $_RUNTIME_DIR_PATH/nebula.yml } state "./bin/nebula -config $_RUNTIME_DIR_PATH/nebula.yml" as nebula - state "./bin/nebula-update-global-bucket" as nebulaUpdateGlobalBucket { - nebulaUpdateGlobalBucket : * Runs once then exits - nebulaUpdateGlobalBucket : * Updates network topo data in garage global bucket (used for bootstrapping) - } entrypoint --> nebulaEntrypoint : child nebulaEntrypoint --> nebula : exec - nebulaEntrypoint --> nebulaUpdateGlobalBucket : child - state "./bin/garage-entrypoint" as garageEntrypoint { + state "./bin/cryptic-net-main garage-entrypoint" as garageEntrypoint { garageEntrypoint : * Create $_RUNTIME_DIR_PATH/garage-N.toml\n (one per storage allocation) garageEntrypoint : * Run child processes } state "./bin/garage -c $_RUNTIME_DIR_PATH/garage-N.toml server" as garage - state "./bin/garage-apply-layout-diff" as garageApplyLayoutDiff { + state "./bin/cryptic-net-main garage-apply-layout-diff" as garageApplyLayoutDiff { garageApplyLayoutDiff : * Runs once then exits garageApplyLayoutDiff : * Updates cluster topo } - state "./bin/garage-update-global-bucket" as garageUpdateGlobalBucket { - garageUpdateGlobalBucket : * Runs once then exits - garageUpdateGlobalBucket : * Updates cluster topo data in garage global bucket (used for bootstrapping) - } entrypoint --> garageEntrypoint : child (only if >1 storage allocation defined in daemon.yml) garageEntrypoint --> garage : child (one per storage allocation) garageEntrypoint --> garageApplyLayoutDiff : child - garageEntrypoint --> garageUpdateGlobalBucket : child + + state "./bin/cryptic-net-main update-global-bucket" as updateGlobalBucket { + updateGlobalBucket : * Runs once then exits + updateGlobalBucket : * Updates the bootstrap data for the host in garage for other hosts to query + } + + entrypoint --> updateGlobalBucket : child } @enduml diff --git a/docs/dev/daemon-process-tree.svg b/docs/dev/daemon-process-tree.svg index 47d5ac7..7923f10 100644 --- a/docs/dev/daemon-process-tree.svg +++ b/docs/dev/daemon-process-tree.svg @@ -1,16 +1,15 @@ -AppDirAll relative paths are relative to the root of the AppDir./bin/dnsmasq -d -C $_RUNTIME_DIR_PATH/dnsmasq.conf./bin/nebula -config $_RUNTIME_DIR_PATH/nebula.yml./bin/garage -c $_RUNTIME_DIR_PATH/garage-N.toml server./AppRunSet PATH to APPDIR/bin./bin/entrypointMerge given and default daemon.yml filesCreate runtime dir at $_RUNTIME_DIR_PATHLock runtime dirRun child processes./bin/dnsmasq-entrypointCreate $_RUNTIME_DIR_PATH/dnsmasq.conf./bin/nebula-entrypointCreate $_RUNTIME_DIR_PATH/nebula.yml./bin/nebula-update-global-bucketRuns once then exitsUpdates network topo data in garage global bucket (used for bootstrapping)./bin/garage-entrypointCreate $_RUNTIME_DIR_PATH/garage-N.toml(one per storage allocation)Run child processes./bin/garage-apply-layout-diffRuns once then exitsUpdates cluster topo./bin/garage-update-global-bucketRuns once then exitsUpdates cluster topo data in garage global bucket (used for bootstrapping)./cryptic-net daemon -c ./daemon.ymlexecexecchildexecchildexecchildchild (only if >1 storage allocation defined in daemon.yml)child (one per storage allocation)childchildAppDirAll relative paths are relative to the root of the AppDir./bin/dnsmasq -d -C $_RUNTIME_DIR_PATH/dnsmasq.conf./bin/nebula -config $_RUNTIME_DIR_PATH/nebula.yml./bin/garage -c $_RUNTIME_DIR_PATH/garage-N.toml server./AppRunSet PATH to APPDIR/bin./bin/cryptic-net-main entrypoint daemon -c ./daemon.ymlCreate runtime dir at $_RUNTIME_DIR_PATHLock runtime dirMerge given and default daemon.yml filesCopy bootstrap.tgz into $_DATA_DIR_PATH, if it's not thereMerge daemon.yml config into bootstrap.tgzRun child processes./bin/dnsmasq-entrypointCreate $_RUNTIME_DIR_PATH/dnsmasq.conf./bin/cryptic-net-main nebula-entrypointCreate $_RUNTIME_DIR_PATH/nebula.yml./bin/cryptic-net-main garage-entrypointCreate $_RUNTIME_DIR_PATH/garage-N.toml(one per storage allocation)Run child processes./bin/cryptic-net-main garage-apply-layout-diffRuns once then exitsUpdates cluster topo./bin/cryptic-net-main update-global-bucketRuns once then exitsUpdates the bootstrap data for the host in garage for other hosts to query./cryptic-net daemon -c ./daemon.ymlexecexecchildexecchildexecchild (only if >1 storage allocation defined in daemon.yml)child (one per storage allocation)childchild