summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <lwirzenius@wikimedia.org>2019-05-22 18:29:29 +0300
committerLars Wirzenius <lwirzenius@wikimedia.org>2019-05-22 18:29:29 +0300
commit28c00cac88bbcd3907ae3b694abedc174f19bbe6 (patch)
tree6886a04cb94a8ea91749f7594e970996bee7151f
parentaec453d9306f195b0b0f096cb82e376b9a13038d (diff)
downloadwmf-ci-arch-28c00cac88bbcd3907ae3b694abedc174f19bbe6.tar.gz
Add: rough arch diagram of CI itself
-rw-r--r--Makefile2
-rw-r--r--arch.dot55
2 files changed, 56 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index c6b6b7d..a35b869 100644
--- a/Makefile
+++ b/Makefile
@@ -4,7 +4,7 @@ version = $(shell git describe --dirty --tags)
all: ci-arch.html ci-arch.pdf
-ci-arch.pdf ci-arch.html: ci-arch.mdwn ecosystem.svg pipeline.svg
+ci-arch.pdf ci-arch.html: ci-arch.mdwn ecosystem.svg pipeline.svg arch.svg
.dot.svg:
dot -Tsvg -o$@ $<
diff --git a/arch.dot b/arch.dot
new file mode 100644
index 0000000..e998ea5
--- /dev/null
+++ b/arch.dot
@@ -0,0 +1,55 @@
+digraph ci {
+ gerrit [label="gerrit"];
+ gerrit [shape="folder"];
+ gerrit [fillcolor="white" style="filled"];
+
+ controller [label="CI controller"];
+ controller [shape="box"];
+ controller [fillcolor="grey" style="filled"];
+
+ vcs_worker [label="VCS worker"];
+ vcs_worker [shape="ellipse"];
+ vcs_worker [fillcolor="grey" style="filled"];
+
+ build_worker [label="build worker"];
+ build_worker [shape="ellipse"];
+ build_worker [fillcolor="grey" style="filled"];
+
+ deployment_worker [label="deployment worker"];
+ deployment_worker [shape="ellipse"];
+ deployment_worker [fillcolor="grey" style="filled"];
+
+ artifacts [label="artifact store"];
+ artifacts [shape="cylinder"];
+ artifacts [fillcolor="grey" style="filled"];
+
+ logs [label="log store"];
+ logs [shape="cylinder"];
+ logs [fillcolor="grey" style="filled"];
+
+ test_env [label="test\nenvironment"];
+ test_env [shape="octagon"];
+ test_env [fillcolor="#0000ee" style="filled"];
+
+ prod_env [label="production\nenvironment"];
+ prod_env [shape="doubleoctagon"];
+ prod_env [fillcolor="red" style="filled"];
+
+
+ gerrit -> controller;
+ controller -> vcs_worker;
+ gerrit -> vcs_worker;
+ vcs_worker -> gerrit;
+ vcs_worker -> artifacts;
+ controller -> build_worker;
+ artifacts -> build_worker;
+ build_worker -> artifacts;
+ build_worker -> logs;
+ vcs_worker -> logs;
+ controller -> deployment_worker;
+ artifacts -> deployment_worker;
+ deployment_worker -> logs;
+ deployment_worker -> test_env;
+ deployment_worker -> prod_env;
+
+}