diff --git a/templates/http/base/database-config.yaml b/templates/http/base/database-config.yaml new file mode 100644 index 0000000..9298b61 --- /dev/null +++ b/templates/http/base/database-config.yaml @@ -0,0 +1,7 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{values.name}}-database-config +data: + VECTORDB_HOST: "{{values.name}}-database" + VECTORDB_PORT: "{{values.dbPort}}" diff --git a/templates/http/base/deployment-database.yaml b/templates/http/base/deployment-database.yaml new file mode 100644 index 0000000..2146f99 --- /dev/null +++ b/templates/http/base/deployment-database.yaml @@ -0,0 +1,38 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app.kubernetes.io/instance: {{values.name}}-database + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/name: {{values.name}}-database + app.kubernetes.io/part-of: {{values.name}} + name: {{values.name}}-database +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/instance: {{values.name}}-database + template: + metadata: + labels: + app.kubernetes.io/instance: {{values.name}}-database + spec: + containers: + - image: {{values.dbContainer}} + name: database + args: [ + "--workers", + "1", + "--host", + "0.0.0.0", + "--port", + "{{values.dbPort}}", + "--proxy-headers", + "--log-config", + "chromadb/log_config.yml", + "--timeout-keep-alive", + "30"] + ports: + - containerPort: {{values.dbPort}} + securityContext: + runAsNonRoot: true diff --git a/templates/http/base/deployment-model-server.yaml b/templates/http/base/deployment-model-server.yaml index 5a7201a..88f6a0f 100644 --- a/templates/http/base/deployment-model-server.yaml +++ b/templates/http/base/deployment-model-server.yaml @@ -1,11 +1,6 @@ apiVersion: apps/v1 kind: Deployment metadata: - annotations: - tad.gitops.set/image: ".spec.template.spec.containers[0].image" - tad.gitops.get/image: ".spec.template.spec.containers[0].image" - tad.gitops.set/replicas: ".spec.replicas" - tad.gitops.get/replicas: ".spec.replicas" labels: app.kubernetes.io/instance: {{values.name}}-model-server app.kubernetes.io/managed-by: kustomize diff --git a/templates/http/base/deployment.yaml b/templates/http/base/deployment.yaml index 1681211..548f18b 100644 --- a/templates/http/base/deployment.yaml +++ b/templates/http/base/deployment.yaml @@ -28,7 +28,11 @@ spec: envFrom: - configMapRef: name: {{values.name}}-model-config + {%- if values.dbRequired %} + - configMapRef: + name: {{values.name}}-database-config + {%- endif %} ports: - containerPort: {{values.appPort}} securityContext: - runAsNonRoot: true \ No newline at end of file + runAsNonRoot: true diff --git a/templates/http/base/kustomization.yaml b/templates/http/base/kustomization.yaml index c9cc57e..4823f86 100644 --- a/templates/http/base/kustomization.yaml +++ b/templates/http/base/kustomization.yaml @@ -19,6 +19,11 @@ resources: - route.yaml - service.yaml - model-config.yaml +{%- if values.dbRequired %} +- deployment-database.yaml +- service-database.yaml +- database-config.yaml +{%- endif %} {%- if values.rhoaiSelected %} - rhoai/ -{%- endif %} \ No newline at end of file +{%- endif %} diff --git a/templates/http/base/rhoai/initialize-dsp.yaml b/templates/http/base/rhoai/initialize-dsp.yaml index 05e5e69..2cc6846 100644 --- a/templates/http/base/rhoai/initialize-dsp.yaml +++ b/templates/http/base/rhoai/initialize-dsp.yaml @@ -97,6 +97,10 @@ spec: envFrom: - configMapRef: name: {{values.name}}-model-config + {%- if values.dbRequired %} + - configMapRef: + name: {{values.name}}-database-config + {%- endif %} ports: - containerPort: 8888 name: notebook-port diff --git a/templates/http/base/service-database.yaml b/templates/http/base/service-database.yaml new file mode 100644 index 0000000..c90667f --- /dev/null +++ b/templates/http/base/service-database.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + app.kubernetes.io/instance: {{values.name}}-database + app.kubernetes.io/managed-by: kustomize + app.kubernetes.io/name: {{values.name}}-database + name: {{values.name}}-database +spec: + ports: + - port: {{values.dbPort}} + protocol: TCP + targetPort: {{values.dbPort}} + selector: + app.kubernetes.io/instance: {{values.name}}-database