From 8768d6888acee004d4e71c816eef30b418c714d1 Mon Sep 17 00:00:00 2001 From: dan-ash <51156564+dan-ash@users.noreply.github.com> Date: Thu, 28 Jan 2021 13:18:15 +0200 Subject: [PATCH] feat(node): add Azure VMScaleSet Node (#404) Co-authored-by: Dan Aharon-Shalom --- config.py | 1 + diagrams/azure/compute.py | 4 ++++ docs/nodes/azure.md | 1 + resources/azure/compute/vm-scale-set.png | Bin 0 -> 12462 bytes 4 files changed, 6 insertions(+) create mode 100644 resources/azure/compute/vm-scale-set.png diff --git a/config.py b/config.py index a5c53b14..514a2f6b 100644 --- a/config.py +++ b/config.py @@ -242,6 +242,7 @@ ALIASES = { "compute": { "ContainerRegistries": "ACR", "KubernetesServices": "AKS", + "VMScaleSet": "VMSS" }, }, "gcp": { diff --git a/diagrams/azure/compute.py b/diagrams/azure/compute.py index aad7b171..2a42b879 100644 --- a/diagrams/azure/compute.py +++ b/diagrams/azure/compute.py @@ -80,6 +80,10 @@ class VMLinux(_Compute): _icon = "vm-linux.png" +class VMScaleSet(_Compute): + _icon = "vm-scale-set.png" + + class VMWindows(_Compute): _icon = "vm-windows.png" diff --git a/docs/nodes/azure.md b/docs/nodes/azure.md index 59413a08..cb051102 100644 --- a/docs/nodes/azure.md +++ b/docs/nodes/azure.md @@ -39,6 +39,7 @@ Node classes list of azure provider. - **diagrams.azure.compute.VMClassic** - **diagrams.azure.compute.VMImages** - **diagrams.azure.compute.VMLinux** +- **diagrams.azure.compute.VMScaleSet** - **diagrams.azure.compute.VMWindows** - **diagrams.azure.compute.VM** diff --git a/resources/azure/compute/vm-scale-set.png b/resources/azure/compute/vm-scale-set.png new file mode 100644 index 0000000000000000000000000000000000000000..f69874c027756c207f7cef0af915e397a7877a2f GIT binary patch literal 12462 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 I#v=Ux0W^XLAOHXW literal 0 HcmV?d00001