diff --git a/autogen.sh b/autogen.sh index 3b105ada..e206946d 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") +providers=("onprem" "aws" "azure" "gcp" "firebase" "k8s" "alibabacloud" "oci" "programming" "generic") if ! [ -x "$(command -v round)" ]; then echo 'round is not installed' diff --git a/config.py b/config.py index 8809a266..9ee1e089 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") +PROVIDERS = ("base", "onprem", "aws", "azure", "gcp", "firebase", "k8s", "alibabacloud", "oci", "programming", "generic") ######################### # Resource Processing # @@ -34,6 +34,7 @@ FILE_PREFIXES = { "alibabacloud": (), "oci": ("OCI-",), "programming": (), + "generic": (), } ######################### @@ -58,6 +59,7 @@ UPPER_WORDS = { "sa", "sc", "sts", "svc", ), "oci": ("oci",), + "generic": ("vpn",), } TITLE_WORDS = { @@ -354,4 +356,5 @@ ALIASES = { "Typescript": "TypeScript" }, }, + "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..db4a32f5 --- /dev/null +++ b/diagrams/generic/compute.py @@ -0,0 +1,19 @@ +# 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" + + +class Storage(_Compute): + _icon = "storage.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/docs/nodes/generic.md b/docs/nodes/generic.md new file mode 100644 index 00000000..1f7e30e0 --- /dev/null +++ b/docs/nodes/generic.md @@ -0,0 +1,26 @@ +--- +id: generic +title: Generic +--- + +Node classes list of generic provider. + +## generic.blank + +- **diagrams.generic.blank.Blank** + +## generic.compute + +- **diagrams.generic.compute.Rack** +- **diagrams.generic.compute.Storage** + +## generic.network + +- **diagrams.generic.network.Firewall** +- **diagrams.generic.network.Router** +- **diagrams.generic.network.Switch** +- **diagrams.generic.network.VPN** + +## generic.place + +- **diagrams.generic.place.Datacenter** diff --git a/resources/generic/blank/blank.png b/resources/generic/blank/blank.png new file mode 100644 index 00000000..98801cae Binary files /dev/null and b/resources/generic/blank/blank.png differ diff --git a/resources/generic/compute/rack.png b/resources/generic/compute/rack.png new file mode 100644 index 00000000..c749fdd2 Binary files /dev/null and b/resources/generic/compute/rack.png differ diff --git a/resources/generic/compute/storage.png b/resources/generic/compute/storage.png new file mode 100644 index 00000000..3b302729 Binary files /dev/null and b/resources/generic/compute/storage.png differ diff --git a/resources/generic/network/firewall.png b/resources/generic/network/firewall.png new file mode 100644 index 00000000..e6c21830 Binary files /dev/null and b/resources/generic/network/firewall.png differ diff --git a/resources/generic/network/router.png b/resources/generic/network/router.png new file mode 100644 index 00000000..377e2b55 Binary files /dev/null and b/resources/generic/network/router.png differ diff --git a/resources/generic/network/switch.png b/resources/generic/network/switch.png new file mode 100644 index 00000000..9699b691 Binary files /dev/null and b/resources/generic/network/switch.png differ diff --git a/resources/generic/network/vpn.png b/resources/generic/network/vpn.png new file mode 100644 index 00000000..009e8437 Binary files /dev/null and b/resources/generic/network/vpn.png differ diff --git a/resources/generic/place/datacenter.png b/resources/generic/place/datacenter.png new file mode 100644 index 00000000..064eaa8f Binary files /dev/null and b/resources/generic/place/datacenter.png differ diff --git a/scripts/resource.py b/scripts/resource.py index 138533a8..8cb866fa 100644 --- a/scripts/resource.py +++ b/scripts/resource.py @@ -93,6 +93,8 @@ def cleaner_oci(f): def cleaner_programming(f): return f.lower() +def cleaner_generic(f): + return f.lower() cleaners = { "onprem": cleaner_onprem, @@ -104,6 +106,7 @@ cleaners = { "alibabacloud": cleaner_alibabacloud, "oci": cleaner_oci, "programming": cleaner_programming, + "generic": cleaner_generic, }