From 97d73acc0bec2b05f1dd9eda1f51428bd93ba8be Mon Sep 17 00:00:00 2001 From: Leandro Damascena Date: Tue, 2 Jun 2020 14:06:56 +0100 Subject: [PATCH] Added generic itens and blank cluster (#171) * Added support to generic DC Icons #92. Added a blank icon to support #39 * Added Storage into storage folder --- autogen.sh | 2 +- config.py | 5 ++++- diagrams/generic/__init__.py | 12 ++++++++++ diagrams/generic/blank.py | 15 +++++++++++++ diagrams/generic/compute.py | 15 +++++++++++++ diagrams/generic/network.py | 27 +++++++++++++++++++++++ diagrams/generic/place.py | 15 +++++++++++++ diagrams/generic/storage.py | 15 +++++++++++++ docs/nodes/generic.md | 29 +++++++++++++++++++++++++ resources/generic/blank/blank.png | Bin 0 -> 351 bytes resources/generic/compute/rack.png | Bin 0 -> 47357 bytes resources/generic/network/firewall.png | Bin 0 -> 6473 bytes resources/generic/network/router.png | Bin 0 -> 6536 bytes resources/generic/network/switch.png | Bin 0 -> 3166 bytes resources/generic/network/vpn.png | Bin 0 -> 4908 bytes resources/generic/place/datacenter.png | Bin 0 -> 6731 bytes resources/generic/storage/storage.png | Bin 0 -> 4755 bytes scripts/resource.py | 3 +++ 18 files changed, 136 insertions(+), 2 deletions(-) create mode 100644 diagrams/generic/__init__.py create mode 100644 diagrams/generic/blank.py create mode 100644 diagrams/generic/compute.py create mode 100644 diagrams/generic/network.py create mode 100644 diagrams/generic/place.py create mode 100644 diagrams/generic/storage.py create mode 100644 docs/nodes/generic.md create mode 100644 resources/generic/blank/blank.png create mode 100644 resources/generic/compute/rack.png create mode 100644 resources/generic/network/firewall.png create mode 100644 resources/generic/network/router.png create mode 100644 resources/generic/network/switch.png create mode 100644 resources/generic/network/vpn.png create mode 100644 resources/generic/place/datacenter.png create mode 100644 resources/generic/storage/storage.png diff --git a/autogen.sh b/autogen.sh index d331cde5..1486dd0b 100755 --- a/autogen.sh +++ b/autogen.sh @@ -4,7 +4,7 @@ set -e app_root_dir="diagrams" # NOTE: azure icon set is not latest version -providers=("onprem" "aws" "azure" "gcp" "firebase" "k8s" "alibabacloud" "oci" "programming" "saas" "elastic") +providers=("onprem" "aws" "azure" "gcp" "firebase" "k8s" "alibabacloud" "oci" "programming" "saas" "elastic" "generic") if ! [ -x "$(command -v round)" ]; then echo 'round is not installed' diff --git a/config.py b/config.py index 21732c71..e5bba3a2 100644 --- a/config.py +++ b/config.py @@ -11,7 +11,7 @@ DIR_APP_ROOT = "diagrams" DIR_RESOURCE = "resources" DIR_TEMPLATE = "templates" -PROVIDERS = ("base", "onprem", "aws", "azure", "gcp", "firebase", "k8s", "alibabacloud", "oci", "programming", "saas", "elastic") +PROVIDERS = ("base", "onprem", "aws", "azure", "gcp", "firebase", "k8s", "alibabacloud", "oci", "programming", "saas", "elastic", "generic") ######################### # Resource Processing # @@ -36,6 +36,7 @@ FILE_PREFIXES = { "programming": (), "saas": (), "elastic": (), + "generic": (), } ######################### @@ -61,6 +62,7 @@ UPPER_WORDS = { ), "oci": ("oci",), "elastic": ("apm", "siem", "ece", "eck"), + "generic": ("vpn",), } TITLE_WORDS = { @@ -369,4 +371,5 @@ ALIASES = { "Logstash": "LogStash", } }, + "generic": {}, } diff --git a/diagrams/generic/__init__.py b/diagrams/generic/__init__.py new file mode 100644 index 00000000..70db6868 --- /dev/null +++ b/diagrams/generic/__init__.py @@ -0,0 +1,12 @@ +""" +Generic provides the possibility of load an image to be presented as a node. +""" + +from diagrams import Node + + +class _Generic(Node): + provider = "generic" + _icon_dir = "resources/generic" + + fontcolor = "#ffffff" diff --git a/diagrams/generic/blank.py b/diagrams/generic/blank.py new file mode 100644 index 00000000..d50410b1 --- /dev/null +++ b/diagrams/generic/blank.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Blank(_Generic): + _type = "blank" + _icon_dir = "resources/generic/blank" + + +class Blank(_Blank): + _icon = "blank.png" + + +# Aliases diff --git a/diagrams/generic/compute.py b/diagrams/generic/compute.py new file mode 100644 index 00000000..436c641e --- /dev/null +++ b/diagrams/generic/compute.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Compute(_Generic): + _type = "compute" + _icon_dir = "resources/generic/compute" + + +class Rack(_Compute): + _icon = "rack.png" + + +# Aliases diff --git a/diagrams/generic/network.py b/diagrams/generic/network.py new file mode 100644 index 00000000..7b9a9ee0 --- /dev/null +++ b/diagrams/generic/network.py @@ -0,0 +1,27 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Network(_Generic): + _type = "network" + _icon_dir = "resources/generic/network" + + +class Firewall(_Network): + _icon = "firewall.png" + + +class Router(_Network): + _icon = "router.png" + + +class Switch(_Network): + _icon = "switch.png" + + +class VPN(_Network): + _icon = "vpn.png" + + +# Aliases diff --git a/diagrams/generic/place.py b/diagrams/generic/place.py new file mode 100644 index 00000000..ec316069 --- /dev/null +++ b/diagrams/generic/place.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Place(_Generic): + _type = "place" + _icon_dir = "resources/generic/place" + + +class Datacenter(_Place): + _icon = "datacenter.png" + + +# Aliases diff --git a/diagrams/generic/storage.py b/diagrams/generic/storage.py new file mode 100644 index 00000000..9e58cefe --- /dev/null +++ b/diagrams/generic/storage.py @@ -0,0 +1,15 @@ +# This module is automatically generated by autogen.sh. DO NOT EDIT. + +from . import _Generic + + +class _Storage(_Generic): + _type = "storage" + _icon_dir = "resources/generic/storage" + + +class Storage(_Storage): + _icon = "storage.png" + + +# Aliases diff --git a/docs/nodes/generic.md b/docs/nodes/generic.md new file mode 100644 index 00000000..af11a0db --- /dev/null +++ b/docs/nodes/generic.md @@ -0,0 +1,29 @@ +--- +id: generic +title: Generic +--- + +Node classes list of generic provider. + +## generic.blank + +- **diagrams.generic.blank.Blank** + +## generic.compute + +- **diagrams.generic.compute.Rack** + +## generic.network + +- **diagrams.generic.network.Firewall** +- **diagrams.generic.network.Router** +- **diagrams.generic.network.Switch** +- **diagrams.generic.network.VPN** + +## generic.place + +- **diagrams.generic.place.Datacenter** + +## generic.storage + +- **diagrams.generic.storage.Storage** diff --git a/resources/generic/blank/blank.png b/resources/generic/blank/blank.png new file mode 100644 index 0000000000000000000000000000000000000000..98801cae7fd8b133206dddc487031b29cce36c4c GIT binary patch literal 351 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K5!6ZWo=hV|c9!t8TuOkD)#(wTUiL5}rLb6AY zF9SoB8UsT^3j@P1pisjL28L1t28LG&3=CE?7#PG0=Ijcz0ZK5H1o;IsFqBO`YXRaV zdAqwXFy8GFUIOHC7I;J!GcfQS24TkI`72U@g6t)pzOL*~SS1B@naT~OT?Gosd%8G= zWZZjukdYV2JG9`te=eW-0w5C%_VFqL9b7LtXE~6oTH+c}l9E`GYL#4+3Zxi}42%qP z4NP^7OhXLKtxSxqOpUY+46F4D^f)+SDVNL9X(2^>bP0l+XkK_!w84 literal 0 HcmV?d00001 diff --git a/resources/generic/compute/rack.png b/resources/generic/compute/rack.png new file mode 100644 index 0000000000000000000000000000000000000000..c749fdd2c5c2f4f191303bbe34306cace2674d95 GIT binary patch literal 47357 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 DCeJ%~ literal 0 HcmV?d00001 diff --git a/resources/generic/network/firewall.png b/resources/generic/network/firewall.png new file mode 100644 index 0000000000000000000000000000000000000000..e6c21830d49676d7f2664df8907486c86a3a20db GIT binary patch literal 6473 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 literal 0 HcmV?d00001 diff --git a/resources/generic/network/router.png b/resources/generic/network/router.png new file mode 100644 index 0000000000000000000000000000000000000000..377e2b5519c9c6ddc60b470c775f061ceb1bafab GIT binary patch literal 6536 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 b`lJBVSXwU^h+h2q6cj)%WH(Z=J%jZhs@MI< literal 0 HcmV?d00001 diff --git a/resources/generic/network/vpn.png b/resources/generic/network/vpn.png new file mode 100644 index 0000000000000000000000000000000000000000..009e8437ba5d9363c228927fd8f0df78bfd32031 GIT binary patch literal 4908 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 ajyYno|4WGP?U^_xfVR56TBV9z%>Mu@-*2b@ literal 0 HcmV?d00001 diff --git a/resources/generic/place/datacenter.png b/resources/generic/place/datacenter.png new file mode 100644 index 0000000000000000000000000000000000000000..064eaa8f4bd03b5713018f7344a96253f88abda4 GIT binary patch literal 6731 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 literal 0 HcmV?d00001 diff --git a/resources/generic/storage/storage.png b/resources/generic/storage/storage.png new file mode 100644 index 0000000000000000000000000000000000000000..3b30272979bd89f8b616f1681a4f5ae114f71d45 GIT binary patch literal 4755 zcmZ9QXHe5k*T(;e2_*rkp#=~GLdQ_0O0NP^B8Cp3S1|+x6perg0i>7Er7MV(8^lJF z-kWr#7ZDW%DbgN%?&r(Ju@Q!2tfe=F#-VooR^5}01$u%fDH!#P|N@T zR=@1Grpo6FVBB?GE#T})d|%V~jM`7n(jNe1TmBA^VsC=Xd6AN!Z=_AR3}vV175VuK z$qWDtj`~{an4szJIrsdyK81Fw-nw!R;YtUg-$~lR8^es(J z!uTC4j>QpuHrLER&ykCx#>rzTG&zQ&W_q*w8r&C>8IdqU80cyVo2H-l1=!F5!^~uo zxT?zsm(Qo5(d`fWn<{R12fx&&A05q}?cK3xQnCM@dy+GEc*3alQEYr?W*41qiP0s* znK`6LbFRtSEv{upFM^|~rn6fpVA%mJ3^h%T_6_?iXmiX-RwdDGhL)xhF(TQQ=&l6X{Luz|J+`t0O$( z_)Wm!Iv~7}{W;dGXdq2@=qa$_qa*|s7gh@QRRU*pGL~K~WVUQoM)prKG>c^Bd^zu% z8mNe&1*If2UUF!8e%Zwd)fow7V!!|KP2n&1fXzkGf^2k0et!_sPqJZcWI%%ThS&et zrSQkeHGXJ?=SQZrohtCElQOH~B3RW#KUeK-xjnnaziWywwKKXdkgpAE9w0m7cP zb5D|r<&K4TDgci4JE5!wncN($vh)@J9J~C7J4Gf2OJDh@3XJU+o7m4UA|uABS&aci zQ5hkW&LGpk3=`qOlMQ6HQ*UN}T0kwfQadp0*v{Dh>Z7{~g9`$8!0!Z$H05J~lIxr% zVtSG)2i=a4p#l6vJ-it|9iGRj1BkX!bHb;w49Cl8a21+W0Gp5ME0=EoTuDswa=U2h z_2(_ngk`IVK=>uR&sIjoJh+N65ryT|!nm4%Fg2)bxLK7R)GO@mayTqs8xLwH-BdT% zfgqZH6W-QaHiQ{h(gos7K)ZU1QCQPUyIEoxK*dWVLT9QDw5&F zgH^~Ua0d?Ia`s55bxI;G^DOyzz2;=VC{+YLZg~;vNP;b8F z5P4=wv)AD-;*iV}_WVVAtp{^S(@7A2-8F`&m~j<^brnAGy=XrB=ePWATx z9%kpIJYU6!;D$7bi9KqLx5wIE=N(Z8{?F77Y+fzs0w6)o$6<^9HDBTZtB)1xOt21^ z>ePi3DxNVB%rl1rtGe&HfEi1P{1&3dOM=+^s8ge5o8h0^62!yvsyh~!`>xyOZ$r?Q zsc{DeSZPVW1cR0)$(F1*8$#(7`HD?UVx=20VLSw5t7rLaYkqPFwRmTUmPo$qYEZ$cL55(@ zw&XI%P+yKWe>Z_KcDQp?xlgGw4so2ke8RckYB}yTklD!;>y|Cu{%v-BIwM|Qm;(Q2 zLw@I19&bhv)b*BzLL{Ul&Wd4CEq`4+2k1aNid=DhP8k66Q=81k-&Z@}pJozWxajYtqRgA#~(ko|9^O)ek#$Oh306(#^D-BE_;p zrP*_;fJ@@*(&AmYAJ>H8Ca?0`_@(@TW{nog=4-d?8CpT&O&PoS^BSK)?PR;)uolxaJE%JH? z(M($9=I{sg$@QvUX(P(HW^sE;5Q`)hGU$<>{dwc7;B`h2Gi@D#%(VGGx13;|jxIxL~@s`WcZ6w&xOmmNW7!~>r}24X+MG`!J- z&tz(z=h#4@wk(m_NAIG67tU1J6ax8pCX-5S6+~hxWPKeCxJpgbiE99>nPY)h@34sF zUmN@)qe+A2`38m=u+z$n8v5jV%!RP{nM@=^1Mh8N9#5;o*A$usEZH$8j2M$%vuhm` ztM{Vv(h zt&)5^(T60J2p)vww$f`jK6fmaQf)@c709#P(HP!^GxBqbS_K&oUl+s{DVd(JmsvTZ zyRLrq_o?-RmLA^HmT(PkS4M%mPACqbO19Qw&ebs!{`Kq?bVKm`>v#Hkv+w%6N@x!b zT=5niJ@N|xn|Qd#?%P<43I(MPXZuY5wowH2nYgGz>#LKsF?+2FFY5L$+$N7;>v1MiOowYMQ<^LD3-UM2ZyO5_1n z#EKxKR4eh|JL<dR~W4;tHMD*F*N(It>J zUb&suyHah;9v$)>eD@<+ZIPnOjGw$6RL`3Cu`OT``R;2MHw-dhzEKj~4kRZ|f1liZ z%@;tbydua@WU;TOEsyoOCo>`+6%ex*0A{;c0hGz;EAudCyJ{O`>^Syz#tR#0e_Agv zgb4PTS3tRkQsXD!Ja=i;!s?O~8SXKmG(;C zTn6q=W<7klsE$%0pqk`QQNcr-Z)|+=^y$IL?Kb9A9&n4Gr$-GA_5tL8^EZhvB^Cn%PrWBWfhF& zG0rP+q<|aJ$+8kL7e%@6GaqjA0i#zaT4YzwUoE~*;W4D5ujnBRV5U&ffPUbZb?)#s zE-)i}{>k8S7Xf?*EO{;1Ft7u_9K^=L$BNT<`Bn6sE7VDhC*~No{l6&r&EH1x(XIYG zn-e;R3TGXeI$skN7W33q(eR=)6S00Pie8BZrt|1I@U}?Ld06tZ_pIw>BAy+@ETEq} zg=7LnAsgf+@swFq&7GSy^n9_GD8eH z9C8a3ZZ2u>^|U5{&2>~>68xn<=Q1?~5T>wPH2e3&u4Uj&KoY&{( zreSLrtS52}araJZ-3JX8!Ku{Rml{9YCaCkRhT9-V%UP;{MN_3g)CAL zlq5S~(kn53x&*NM+ET?)m2=-W<&W=v%?jxxz0X^+SL_Yxx1_$-(i>}=Si50+YS`Ly z8P%?4Y|k}OycfSp?T4J}>Jl^?kUi!zQZDPYyTY6)y}H{f5|q*O<@ z_ox`n8ioH49_0AoAJ)PQkUJk60mWa=Oyz5e|FWk!R#{;~lz$Zamr6UqI)9i*mkD9! zoA7za6P5j(^gj!KB?DU(YtGxgJDl|zj!~_2TNl2V_^Ng{p_iu}c$0-7eo^A@lWTvA z*)O>LOPY{_nAvV~n$xr0LHSpAuFfUN7aTBr@}4ihpB7Nz#*NtB;kdHZ=w%K?3>#6} z&#MNfi7>{B8VtcDd8dg9!qm`crMHsJDVJmU7>2vlsdS4kAA1?FMi#!}zE;+d(D$`H z5!G%sq;3m|GzOe#mc6r3(S=U>SvcBe;Je+dYYvRG`xQL zc8aci;PP?4qc-E`0-VUoRRNbvKChD(_u+;@=33vKC1DsA+}ElhJWN%;}9G&W><-IdFh`;1t4 zKhft;WZ${#jc*VbJk{^WNU3`WrtNRotse9mbIASIYi}6&7a#B~xfB7c8rcO{|)4cFQP>{NEu#vZe zw5Ydp0gIUAfE~9BrQ1m^+gR#M%TGUed5Suf1}}SYy!{sV24(LTj*fKI9R4P4(nTu| zmy*GWX!^+B?83YU##K*pIC1jsnrD