blob: b2466b07cb7c2f0fae3c50a783890c53fff6ec49 [file] [log] [blame]
Radek Pietruszewskif5844312023-10-27 22:41:18 +02001local kube = import "../../../kube/hscloud.libsonnet";
radexdf18c802023-08-12 14:16:39 +02002
3{
4 local top = self,
5 local cfg = self.cfg,
6
7 cfg:: {
8 name: "demo",
radexe6322632023-08-12 15:27:32 +02009 image: "registry.k0.hswaw.net/radex/bruh:v3",
radexdf18c802023-08-12 14:16:39 +020010 domain: "demo.hs.radex.io",
11 },
12
radex99ed6a72023-11-24 11:42:55 +010013 local ns = kube.Namespace("personal-radex"),
radexdf18c802023-08-12 14:16:39 +020014
radex99ed6a72023-11-24 11:42:55 +010015 deployment: ns.Contain(kube.Deployment(cfg.name)) {
radexdf18c802023-08-12 14:16:39 +020016 spec+: {
radex7fa38d42023-12-02 10:31:42 +010017 replicas: 1,
radexdf18c802023-08-12 14:16:39 +020018 template+: {
19 spec+: {
20 containers_: {
21 default: kube.Container("default") {
22 image: cfg.image,
23 resources: {
24 requests: { cpu: "0.01", memory: "64M" },
25 limits: { cpu: "1", memory: "256M" },
26 },
27 ports_: {
radexe6322632023-08-12 15:27:32 +020028 http: { containerPort: 8080 },
radexdf18c802023-08-12 14:16:39 +020029 },
30 },
31 },
32 },
33 },
34 },
35 },
36
radex99ed6a72023-11-24 11:42:55 +010037 service: ns.Contain(kube.Service(cfg.name)) {
radex8b8f3872023-11-24 11:09:46 +010038 target:: top.deployment,
radexdf18c802023-08-12 14:16:39 +020039 },
40
radex99ed6a72023-11-24 11:42:55 +010041 ingress: ns.Contain(kube.SimpleIngress(cfg.name)) {
Radek Pietruszewskif5844312023-10-27 22:41:18 +020042 hosts:: [cfg.domain],
radexd45584a2023-11-24 12:51:57 +010043 target:: top.service,
Radek Pietruszewskif5844312023-10-27 22:41:18 +020044 },
radexdf18c802023-08-12 14:16:39 +020045}