From 56e2ffec5cc997438143e9cf4096ecd731c4968c Mon Sep 17 00:00:00 2001 From: Ben Hirschberg <59160382+slashben@users.noreply.github.com> Date: Sun, 2 Oct 2022 20:36:59 +0300 Subject: [PATCH] Add arch diagrams (#857) * Publishing community meetings * Adding architecture diagrams * fix type * resize diagrams * Changing the operator diagram Co-authored-by: Benyamin Hirschberg <59160382+BenHirschbergCa@users.noreply.github.com> --- README.md | 7 +++++++ docs/ks-cli-arch.png | Bin 0 -> 14972 bytes docs/ks-operator-arch.png | Bin 0 -> 20883 bytes 3 files changed, 7 insertions(+) create mode 100644 docs/ks-cli-arch.png create mode 100644 docs/ks-operator-arch.png diff --git a/README.md b/README.md index b0fa4761..745a577d 100644 --- a/README.md +++ b/README.md @@ -51,6 +51,13 @@ kubescape scan --submit --enable-host-scan --verbose
+## Architecture in short +### CLI + + +### Operator + + ### Please [star ⭐](https://github.com/kubescape/kubescape/stargazers) the repo if you want us to continue developing and improving Kubescape 😀
diff --git a/docs/ks-cli-arch.png b/docs/ks-cli-arch.png new file mode 100644 index 0000000000000000000000000000000000000000..af7cbca6923b193a6eeef9a49e2abe084ca49a83 GIT binary patch literal 14972 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

St6#6MBjr0U+}oYn z7*xO3R$Blr_bLs=<7yXGA08;wUbk4)H)|vf^D`~aZ=~0Jc=bCUK9c3&UL+^o`iFSW3TF&}i_5@b&jmfMcx ztrA#agQ1X`%j<^U%QSr3xF8uIBA<2M>%akTP~&Y+*k;b~R!~ zq!&(msMb?`pG@eXa;+CWZNa9+>v?WX_k zYO?79G_OzLA9w4&duLB3Z|!A&u;}r>UBXs*JG!Gv_MqrgMlx?ijaACpw7Bm1xw>WF zC_Lo@PxtOhGaWUasad=Jc$@rtT)>spg;BSR@Wxv%kK9_fb;pn;M3eH4&z;dv%4Qr*8K5Wl*oX3+j7-SGe5AfqQJe%3Fy6zF*TBwgK`gs*0p~OFr^~ z>p8%Mwi~(deUFE4DK1aa)!m&%I-DdfTCdPxGJS{sy-z||@#ghAn7+x$$=%BN(xOQk z7**;Mhqx>W8`FJHK6W*GmUWkk>!&P_?_3JD8u<>M3EH|Dd+gE1mkeu>VH-s>QC|^6 z7rlVB)i(*6R`UOS7ywZp{_?Rm;1|4($leg!`R+$FFGCLC!E>C_>(fodsGH6To3Yuo z5}qq|BEwCkIrq3b5N$`n$Hp2y&Q_i{p0yuX55l`70p813QvY^IJl0u@`^4@4V<@NG zfS>Cqr?y0}Dese6z4s5MUA}x)Ew;4J!naAzqef6z%0A8O0pi_ap7kNQfMk(e@pn$S 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 literal 0 HcmV?d00001