blob: d829eef8e243a6fb7472e81c9489c2fd34ef5a75 [file] [log] [blame]
Radek Pietruszewskif5844312023-10-27 22:41:18 +02001local kube = import "../../../kube/hscloud.libsonnet";
radexae2a7252023-08-13 11:45:59 +02002
3{
4 local top = self,
5 local cfg = self.cfg,
6
7 cfg:: {
8 name: "demo-next",
radex5365e7e2023-08-15 18:07:28 +02009 image: "registry.k0.hswaw.net/radex/next-bruh:v2",
radexae2a7252023-08-13 11:45:59 +020010 domain: "demo-next.hs.radex.io",
11 },
12
radex99ed6a72023-11-24 11:42:55 +010013 local ns = kube.Namespace("personal-radex"),
radexae2a7252023-08-13 11:45:59 +020014
radex99ed6a72023-11-24 11:42:55 +010015 deployment: ns.Contain(kube.Deployment(cfg.name)) {
radexae2a7252023-08-13 11:45:59 +020016 spec+: {
radex5365e7e2023-08-15 18:07:28 +020017 replicas: 1,
radexae2a7252023-08-13 11:45:59 +020018 template+: {
19 spec+: {
radex5365e7e2023-08-15 18:07:28 +020020 volumes_: {
21 data: kube.PersistentVolumeClaimVolume(top.data),
22 },
radexae2a7252023-08-13 11:45:59 +020023 containers_: {
24 default: kube.Container("default") {
25 image: cfg.image,
26 resources: {
27 requests: { cpu: "0.01", memory: "64M" },
28 limits: { cpu: "1", memory: "256M" },
29 },
radex5365e7e2023-08-15 18:07:28 +020030 env_: {
31 DATA_PATH: "/data",
32 },
radexae2a7252023-08-13 11:45:59 +020033 ports_: {
34 http: { containerPort: 3000 },
35 },
radex5365e7e2023-08-15 18:07:28 +020036 volumeMounts_: {
37 data: { mountPath: '/data' },
38 }
radexae2a7252023-08-13 11:45:59 +020039 },
40 },
41 },
42 },
43 },
44 },
45
radex99ed6a72023-11-24 11:42:55 +010046 data: ns.Contain(kube.PersistentVolumeClaim("data")) {
radex36964dc2023-11-24 11:19:46 +010047 storage:: "1Gi",
48 storageClass:: "waw-hdd-redundant-3",
radex5365e7e2023-08-15 18:07:28 +020049 },
radex99ed6a72023-11-24 11:42:55 +010050 service: ns.Contain(kube.Service(cfg.name)) {
radex8b8f3872023-11-24 11:09:46 +010051 target:: top.deployment,
radexae2a7252023-08-13 11:45:59 +020052 },
53
radex99ed6a72023-11-24 11:42:55 +010054 ingress: ns.Contain(kube.SimpleIngress(cfg.name)) {
Radek Pietruszewskif5844312023-10-27 22:41:18 +020055 hosts:: [cfg.domain],
56 target_service:: top.service,
57 },
radexae2a7252023-08-13 11:45:59 +020058}