''' 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()