Merge pull request #21 from rtyler/diagram

Add a rough system diagram from my notebook
This commit is contained in:
R Tyler Croy 2019-07-27 11:23:04 -07:00 committed by GitHub
commit 55824515ce
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 32 additions and 2 deletions

View File

@ -12,7 +12,6 @@ SUB_DIRS=grammar
################################################################################
## Phony targets
# Cute hack thanks to:
# https://marmelab.com/blog/2016/02/29/auto-documented-makefile.html
help: ## Display this help text
@ -39,7 +38,9 @@ prereqs: scripts/prereqs.sh ## Check that this system has the necessary tools to
clean: ## Clean all temporary/working files
$(foreach dir, $(SUB_DIRS), $(MAKE) -C $(dir) $@)
diagram: system.png system.dot ## Generate the diagrams describing otto
dot -Tpng -o system.png system.dot
################################################################################
.PHONY: all build check clean depends lint swagger

29
system.dot Normal file
View File

@ -0,0 +1,29 @@
digraph {
label="Otto system design";
node[shape="box", style="rounded"]
node[shape="box", style="square"]
orchestrator; frontend; datastore; objectstore; webhooks; agents;
node[shape="parallelogram", style=""]
eventbus;
webhooks -> eventbus[color="blue", label="write events"];
eventbus -> frontend[color="red", label="subscribe to live updates"];
orchestrator -> datastore[color="blue", label="create runs"];
orchestrator -> eventbus[color="purple", dir="both", label="read/write events"];
orchestrator -> agents[color="purple", dir="both", label="create and control agents"];
agents -> eventbus[color="blue", label="write events"];
agents -> datastore[color="blue", label="persist results"];
agents -> objectstore[color="blue", label="archive artifacts"];
datastore -> frontend[color="red", label="read runs"];
objectstore -> frontend[color="red", label="read artifacts"];
objectstore -> agents[color="red", label="fetch artifacts/stashes"];
//{rank=same; orchestrator agents eventbus}
//{rank=same; message input}
}

BIN
system.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB