From 9479f4401da9c437a4fade970d369611bc70a8ee Mon Sep 17 00:00:00 2001 From: Cyber MacGeddon Date: Fri, 6 Sep 2024 21:43:38 +0100 Subject: [PATCH] Finish template mods for k8s --- templates/components/grafana.jsonnet | 1 + templates/components/vertexai.jsonnet | 10 +++++++-- templates/docker-compose.jsonnet | 23 +++++++++++++++----- templates/k8s.jsonnet | 31 ++++++++++++++++++++++++++- 4 files changed, 57 insertions(+), 8 deletions(-) diff --git a/templates/components/grafana.jsonnet b/templates/components/grafana.jsonnet index 5bacceb9..6b1c4742 100644 --- a/templates/components/grafana.jsonnet +++ b/templates/components/grafana.jsonnet @@ -8,6 +8,7 @@ local images = import "values/images.jsonnet"; create:: function(engine) local vol = engine.volume("prometheus-data").with_size("20G"); + local cfgVol = engine.configVolume( "prometheus-cfg", "./prometheus", { diff --git a/templates/components/vertexai.jsonnet b/templates/components/vertexai.jsonnet index 372ec4d1..4420f2e2 100644 --- a/templates/components/vertexai.jsonnet +++ b/templates/components/vertexai.jsonnet @@ -15,7 +15,7 @@ local prompts = import "prompts/mixtral.jsonnet"; create:: function(engine) - local cfgVol = engine.configVolume( + local cfgVol = engine.secretVolume( "vertexai-creds", "./vertexai", { @@ -60,7 +60,13 @@ local prompts = import "prompts/mixtral.jsonnet"; create:: function(engine) - local cfgVol = engine.configVolume("./vertexai"); + local cfgVol = engine.secretVolume( + "vertexai-creds", + "./vertexai", + { + "private.json": importstr "vertexai/private.json", + } + ); local container = engine.container("text-completion-rag") diff --git a/templates/docker-compose.jsonnet b/templates/docker-compose.jsonnet index 32697c66..e4f78c30 100644 --- a/templates/docker-compose.jsonnet +++ b/templates/docker-compose.jsonnet @@ -26,7 +26,7 @@ function(vol, mnt) self + { volumes: super.volumes + [{ - volume: vol.name, mount: mnt + volume: vol, mount: mnt }] }, @@ -70,7 +70,7 @@ (if std.length(container.volumes) > 0 then { volumes: [ - "%s:%s" % [vol.volume, vol.mount] + "%s:%s" % [vol.volume.name, vol.mount] for vol in container.volumes ] } @@ -112,13 +112,26 @@ }, - // FIXME: For K8s - configVolume:: function(name) + configVolume:: function(name, dir, parts) { local volume = self, - name: name, + name: dir, + + with_size:: function(size) self + { size: size }, + + add:: function() { + } + + }, + + secretVolume:: function(name, dir, parts) + { + + local volume = self, + + name: dir, with_size:: function(size) self + { size: size }, diff --git a/templates/k8s.jsonnet b/templates/k8s.jsonnet index 60032004..7d275aa1 100644 --- a/templates/k8s.jsonnet +++ b/templates/k8s.jsonnet @@ -202,7 +202,6 @@ }, - // FIXME: For K8s configVolume:: function(name, dir, parts) { @@ -233,6 +232,36 @@ }, + secretVolume:: function(name, dir, parts) + { + + local volume = self, + + name: name, + + with_size:: function(size) self + { size: size }, + + add:: function() { + resources +: { + [volume.name + "-cm"]: { + apiVersion: "v1", + kind: "Secret", + metadata: { + name: volume.name, + namespace: "trustgraph", + }, + data: parts + }, + } + }, + + volRef:: function() { + name: volume.name, + secret: { secretName: volume.name + "-cm" }, + } + + }, + containers:: function(name, containers) {