From d6bfd41da136249c057ebdaca4a013c19a51af25 Mon Sep 17 00:00:00 2001 From: Bobby DeSimone Date: Thu, 16 Apr 2020 13:33:11 -0700 Subject: [PATCH] add pomerium Signed-off-by: Bobby DeSimone --- diagrams/onprem/network.py | 4 ++++ docs/nodes/onprem.md | 1 + resources/onprem/network/pomerium.png | Bin 0 -> 25201 bytes 3 files changed, 5 insertions(+) create mode 100644 resources/onprem/network/pomerium.png diff --git a/diagrams/onprem/network.py b/diagrams/onprem/network.py index 05203fb6..82a61499 100644 --- a/diagrams/onprem/network.py +++ b/diagrams/onprem/network.py @@ -56,6 +56,10 @@ class Pfsense(_Network): _icon = "pfsense.png" +class Pomerium(_Network): + _icon = "pomerium.png" + + class Tomcat(_Network): _icon = "tomcat.png" diff --git a/docs/nodes/onprem.md b/docs/nodes/onprem.md index e262d1e2..11215ffb 100644 --- a/docs/nodes/onprem.md +++ b/docs/nodes/onprem.md @@ -57,6 +57,7 @@ Node classes list of onprem provider. - **diagrams.onprem.network.Linkerd** - **diagrams.onprem.network.Nginx** - **diagrams.onprem.network.Pfsense**, **PFSense** (alias) +- **diagrams.onprem.network.Pomerium** - **diagrams.onprem.network.Tomcat** - **diagrams.onprem.network.Traefik** - **diagrams.onprem.network.Vyos**, **VyOS** (alias) diff --git a/resources/onprem/network/pomerium.png b/resources/onprem/network/pomerium.png new file mode 100644 index 0000000000000000000000000000000000000000..1bf2da5140d9ea62e5605936000c1fa72f2ce1f6 GIT binary patch literal 25201 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 literal 0 HcmV?d00001