From 0c2e0681a30e1df047344e1e87423cd7998ab6fe Mon Sep 17 00:00:00 2001 From: Cyber MacGeddon Date: Sun, 8 Sep 2024 22:00:28 +0100 Subject: [PATCH] Fix config templates --- templates/config-to-gcp-k8s.jsonnet | 42 +-------- templates/config-to-minikube-k8s.jsonnet | 108 +---------------------- templates/engine/gcp-k8s.jsonnet | 4 +- 3 files changed, 8 insertions(+), 146 deletions(-) diff --git a/templates/config-to-gcp-k8s.jsonnet b/templates/config-to-gcp-k8s.jsonnet index 4ba0325e..3d089a24 100644 --- a/templates/config-to-gcp-k8s.jsonnet +++ b/templates/config-to-gcp-k8s.jsonnet @@ -1,6 +1,6 @@ -local engine = import "k8s.jsonnet"; -local decode = import "decode-config.jsonnet"; +local engine = import "engine/gcp-k8s.jsonnet"; +local decode = import "util/decode-config.jsonnet"; local components = import "components.jsonnet"; // Import config @@ -9,44 +9,8 @@ local config = import "config.json"; // Produce patterns from config local patterns = decode(config); -local ns = { - apiVersion: "v1", - kind: "Namespace", - metadata: { - name: "trustgraph", - }, - "spec": { - }, -}; - -local sc = { - apiVersion: "storage.k8s.io/v1", - kind: "StorageClass", - metadata: { - name: "tg", - }, - provisioner: "pd.csi.storage.gke.io", - parameters: { - type: "pd-balanced", - "csi.storage.k8s.io/fstype": "ext4", - }, - reclaimPolicy: "Delete", - volumeBindingMode: "WaitForFirstConsumer", -}; - -//patterns["pulsar"].create(engine) - // Extract resources usnig the engine -local resources = std.flattenArrays([ - p.create(engine) for p in std.objectValues(patterns) -]); - -local resourceList = { - apiVersion: "v1", - kind: "List", - items: [ns, sc] + resources, -}; - +local resourceList = engine.package(patterns); resourceList diff --git a/templates/config-to-minikube-k8s.jsonnet b/templates/config-to-minikube-k8s.jsonnet index 2c180555..073358cb 100644 --- a/templates/config-to-minikube-k8s.jsonnet +++ b/templates/config-to-minikube-k8s.jsonnet @@ -1,6 +1,6 @@ -local k8sEngine = import "mini-kubek8s.jsonnet"; -local decode = import "decode-config.jsonnet"; +local engine = import "engine/minikube-k8s.jsonnet"; +local decode = import "util/decode-config.jsonnet"; local components = import "components.jsonnet"; // Import config @@ -19,110 +19,8 @@ local ns = { }, }; -local engine = k8sEngine + { - volume:: function(name) - { - local volume = self, - name: name, - with_size:: function(size) self + { size: size }, - add:: function() [ - { - apiVersion: "v1", - kind: "PersistentVolume", - metadata: { - name: volume.name, - }, - spec: { - accessModes: [ "ReadWriteOnce" ], - capacity: { - storage: volume.size, - }, - persistentVolumeReclaimPolicy: "Delete", - hostPath: { - path: "/data/pv-" + volume.name, - }, - } - }, - { - apiVersion: "v1", - kind: "PersistentVolumeClaim", - metadata: { - name: volume.name, - namespace: "trustgraph", - }, - spec: { - accessModes: [ "ReadWriteOnce" ], - resources: { - requests: { - storage: volume.size, - } - }, - } - } - ], - - volRef:: function() { - name: volume.name, - persistentVolumeClaim: { claimName: volume.name }, - } - - }, - - service:: function(containers) - { - local service = self, - name: containers.name, - ports: [], - with_port:: - function(src, dest, name) - self + { - ports: super.ports + [ - { src: src, dest: dest, name: name } - ] - }, - add:: function() [ - { - apiVersion: "v1", - kind: "Service", - metadata: { - name: service.name, - namespace: "trustgraph", - }, - spec: { - selector: { - app: service.name, - }, - type: "LoadBalancer", - ports: [ - { - port: port.src, - targetPort: port.dest, - name: port.name, - } - for port in service.ports - ], - } - } - ], - }, - -}; - -//patterns["pulsar"].create(engine) - // Extract resources using the engine -local resources = std.flattenArrays([ - p.create(engine) for p in std.objectValues(patterns) -]); - -local resourceList = { - apiVersion: "v1", - kind: "List", - items: [ - ns, - ] + resources, -}; - +local resourceList = engine.package(patterns); resourceList diff --git a/templates/engine/gcp-k8s.jsonnet b/templates/engine/gcp-k8s.jsonnet index 2e710e37..0605a570 100644 --- a/templates/engine/gcp-k8s.jsonnet +++ b/templates/engine/gcp-k8s.jsonnet @@ -26,12 +26,12 @@ local sc = { volumeBindingMode: "WaitForFirstConsumer", }; -return k8s + { +k8s + { // Extract resources usnig the engine package:: function(patterns) local resources = [sc, ns] + std.flattenArrays([ - p.create(engine) for p in std.objectValues(patterns) + p.create(self) for p in std.objectValues(patterns) ]); local resourceList = { apiVersion: "v1",