Files
infra/wiki-resources/diagrams/__main__.py
shockrah ce68e5ee36
Some checks failed
Ansible Linting / ansible-lint (push) Failing after 4s
Secops Linting and Safety Checks / checkov-scan-s3 (push) Failing after 14s
Linter additions and adding ingress controllers to the diagrams
2026-04-19 11:37:52 -07:00

32 lines
1.1 KiB
Python

'''
This module is here to provide a consistent way of generating diagrams of the
current infrastrcuture
'''
from diagrams import Cluster
from diagrams import Diagram
from diagrams.k8s.compute import Pod
from diagrams.k8s.network import Service
from diagrams.k8s.network import Ingress
from diagrams.generic.compute import Rack
from diagrams.generic.blank import Blank
from personal import Gitea
from personal import StaticSite
if __name__ == '__main__':
with Diagram('Public Infrastructure', show=False):
with Cluster('Randy Random Host'):
nginx = Rack('Nginx LB')
git = Gitea('Gitea') >> nginx
tmp = StaticSite('Temper Blog') >> nginx
dev = StaticSite('Dev Blog') >> nginx
_ = nginx >> Blank()
with Cluster('Namespace - playground'):
ingress = Ingress('Nginx Controller')
s = Pod('Sanity') >> Service('sanity.shockrah.xyz') >> ingress
u = Pod('Uptime') >> Service('uptime.shockrah.xyz') >> ingress
p = Pod('Wiki') >> Service('wiki.shockrah.xyz') >> ingress
_ = ingress >> Blank()