local kube = import "../../../kube/hscloud.libsonnet"; { local top = self, local cfg = self.cfg, cfg:: { name: "demo", image: "registry.k0.hswaw.net/radex/bruh:v3", domain: "demo.hs.radex.io", }, ns: kube.Namespace("personal-radex"), deployment: top.ns.Contain(kube.Deployment(cfg.name)) { spec+: { replicas: 3, template+: { spec+: { containers_: { default: kube.Container("default") { image: cfg.image, resources: { requests: { cpu: "0.01", memory: "64M" }, limits: { cpu: "1", memory: "256M" }, }, ports_: { http: { containerPort: 8080 }, }, }, }, }, }, }, }, service: top.ns.Contain(kube.Service(cfg.name)) { target_pod:: top.deployment.spec.template, }, ingress: top.ns.Contain(kube.SimpleIngress(cfg.name)) { hosts:: [cfg.domain], target_service:: top.service, }, }