基于helm-dify 0.23.0 版本初始化

This commit is contained in:
2025-03-21 10:00:02 +08:00
parent d773ead144
commit 67b42e3e1c
196 changed files with 26165 additions and 0 deletions
+66
View File
@@ -0,0 +1,66 @@
{{/* Generate the enabled modules config. This can be done a lot nicer once we drop Helm v2 support */}}
{{ define "enabled_modules" }}
{{- $modules := list -}}
{{- if or (index .Values "modules" "text2vec-contextionary" "enabled") (index .Values "modules" "text2vec-contextionary" "inferenceUrl") -}}
{{ $modules = append $modules "text2vec-contextionary" }}
{{- end -}}
{{- if or (index .Values "modules" "text2vec-transformers" "enabled") (index .Values "modules" "text2vec-transformers" "inferenceUrl") -}}
{{ $modules = append $modules "text2vec-transformers" }}
{{- else if or (index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "enabled") (index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "inferenceUrl") -}}
{{ $modules = append $modules "text2vec-transformers" }}
{{- else if or (index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "enabled") (index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "inferenceUrl") -}}
{{ $modules = append $modules "text2vec-transformers" }}
{{- end -}}
{{- if or (index .Values "modules" "qna-transformers" "enabled") (index .Values "modules" "qna-transformers" "inferenceUrl") -}}
{{ $modules = append $modules "qna-transformers" }}
{{- end -}}
{{- if (index .Values "modules" "qna-openai" "enabled") -}}
{{ $modules = append $modules "qna-openai" }}
{{- end -}}
{{- if (index .Values "modules" "generative-openai" "enabled") -}}
{{ $modules = append $modules "generative-openai" }}
{{- end -}}
{{- if or (index .Values "modules" "img2vec-neural" "enabled") (index .Values "modules" "img2vec-neural" "inferenceUrl") -}}
{{ $modules = append $modules "img2vec-neural" }}
{{- end -}}
{{- if or (index .Values "modules" "ner-transformers" "enabled") (index .Values "modules" "ner-transformers" "inferenceUrl") -}}
{{ $modules = append $modules "ner-transformers" }}
{{- end -}}
{{- if or (index .Values "modules" "sum-transformers" "enabled") (index .Values "modules" "sum-transformers" "inferenceUrl") -}}
{{ $modules = append $modules "sum-transformers" }}
{{- end -}}
{{- if or (index .Values "modules" "text-spellcheck" "enabled") (index .Values "modules" "text-spellcheck" "inferenceUrl") -}}
{{ $modules = append $modules "text-spellcheck" }}
{{- end -}}
{{- if or (index .Values "modules" "multi2vec-clip" "enabled") (index .Values "modules" "multi2vec-clip" "inferenceUrl") -}}
{{ $modules = append $modules "multi2vec-clip" }}
{{- end -}}
{{- if (index .Values "modules" "text2vec-openai" "enabled") -}}
{{ $modules = append $modules "text2vec-openai" }}
{{- end -}}
{{- if (index .Values "modules" "text2vec-huggingface" "enabled") -}}
{{ $modules = append $modules "text2vec-huggingface" }}
{{- end -}}
{{- if (index .Values "modules" "text2vec-cohere" "enabled") -}}
{{ $modules = append $modules "text2vec-cohere" }}
{{- end -}}
{{- if (index .Values "modules" "ref2vec-centroid" "enabled") -}}
{{ $modules = append $modules "ref2vec-centroid" }}
{{- end -}}
{{- if (index .Values "backups" "filesystem" "enabled") -}}
{{ $modules = append $modules "backup-filesystem" }}
{{- end -}}
{{- if (index .Values "backups" "s3" "enabled") -}}
{{ $modules = append $modules "backup-s3" }}
{{- end -}}
{{- if (index .Values "backups" "gcs" "enabled") -}}
{{ $modules = append $modules "backup-gcs" }}
{{- end -}}
{{- if (index .Values "backups" "azure" "enabled") -}}
{{ $modules = append $modules "backup-azure" }}
{{- end -}}
{{- if gt (len $modules) 0 -}}
- name: ENABLE_MODULES
value: {{ join "," $modules }}
{{- end -}}
{{- end -}}
@@ -0,0 +1,22 @@
{{ if and (index .Values "backups" "azure" "enabled") (index .Values "backups" "azure" "secrets") }}
{{- if or (index .Values "backups" "azure" "secrets" "AZURE_STORAGE_ACCOUNT") (index .Values "backups" "azure" "secrets" "AZURE_STORAGE_KEY") (index .Values "backups" "azure" "secrets" "AZURE_STORAGE_CONNECTION_STRING") }}
apiVersion: v1
kind: Secret
metadata:
name: backup-azure
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
type: Opaque
data:
{{- if index .Values "backups" "azure" "secrets" "AZURE_STORAGE_ACCOUNT" }}
AZURE_STORAGE_ACCOUNT: {{ index .Values "backups" "azure" "secrets" "AZURE_STORAGE_ACCOUNT" | b64enc }}
{{- end }}
{{- if index .Values "backups" "azure" "secrets" "AZURE_STORAGE_KEY" }}
AZURE_STORAGE_KEY: {{ index .Values "backups" "azure" "secrets" "AZURE_STORAGE_KEY" | b64enc }}
{{- end }}
{{- if index .Values "backups" "azure" "secrets" "AZURE_STORAGE_CONNECTION_STRING" }}
AZURE_STORAGE_CONNECTION_STRING: {{ index .Values "backups" "azure" "secrets" "AZURE_STORAGE_CONNECTION_STRING" | b64enc }}
{{- end }}
{{- end }}
{{ end }}
@@ -0,0 +1,56 @@
{{ if index .Values "modules" "text2vec-contextionary" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: contextionary
labels:
name: contextionary
app: contextionary
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
replicas: {{ index .Values "modules" "text2vec-contextionary" "replicas" }}
selector:
matchLabels:
app: contextionary
template:
metadata:
labels:
app: contextionary
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
{{- if (index .Values "modules" "text2vec-contextionary" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "text2vec-contextionary" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: contextionary
image: {{ index .Values "modules" "text2vec-contextionary" "registry" }}/{{ index .Values "modules" "text2vec-contextionary" "repo" }}:{{ index .Values "modules" "text2vec-contextionary" "tag" }}
env:
- name: OCCURRENCE_WEIGHT_LINEAR_FACTOR
value: {{ index .Values "modules" "text2vec-contextionary" "envconfig" "occurrence_weight_linear_factor" | quote }}
- name: EXTENSIONS_STORAGE_MODE
value: {{ index .Values "modules" "text2vec-contextionary" "envconfig" "extensions_storage_mode" | quote }}
- name: EXTENSIONS_STORAGE_ORIGIN
value: http://{{ .Values.service.name }}.{{ .Release.Namespace }}.svc.cluster.local
- name: NEIGHBOR_OCCURRENCE_IGNORE_PERCENTILE
value: {{ index .Values "modules" "text2vec-contextionary" "envconfig" "neighbor_occurrence_ignore_percentile" | quote }}
- name: ENABLE_COMPOUND_SPLITTING
value: {{ index .Values "modules" "text2vec-contextionary" "envconfig" "enable_compound_splitting" | quote }}
resources:
{{ index .Values "modules" "text2vec-contextionary" "resources" | toYaml | indent 10 }}
{{- with index .Values "modules" "text2vec-contextionary" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text2vec-contextionary" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text2vec-contextionary" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{ end }}
@@ -0,0 +1,17 @@
{{ if index .Values "modules" "text2vec-contextionary" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: contextionary
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
type: ClusterIP
selector:
app: contextionary
ports:
- protocol: TCP
port: 9999
targetPort: 9999
{{ end }}
+14
View File
@@ -0,0 +1,14 @@
{{ if and (index .Values "backups" "gcs" "enabled") (index .Values "backups" "gcs" "secrets") }}
{{- if index .Values "backups" "gcs" "secrets" "GOOGLE_APPLICATION_CREDENTIALS" }}
apiVersion: v1
kind: Secret
metadata:
name: backup-gcs
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
type: Opaque
data:
GOOGLE_APPLICATION_CREDENTIALS: {{ index .Values "backups" "gcs" "secrets" "GOOGLE_APPLICATION_CREDENTIALS" | b64enc }}
{{- end }}
{{ end }}
@@ -0,0 +1,67 @@
{{ if index .Values "modules" "img2vec-neural" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ index .Values "modules" "img2vec-neural" "fullnameOverride" }}
labels:
name: {{ index .Values "modules" "img2vec-neural" "fullnameOverride" }}
app: {{ index .Values "modules" "img2vec-neural" "fullnameOverride" }}
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
replicas: {{ index .Values "modules" "img2vec-neural" "replicas" }}
selector:
matchLabels:
app: {{ index .Values "modules" "img2vec-neural" "fullnameOverride" }}
template:
metadata:
labels:
app: {{ index .Values "modules" "img2vec-neural" "fullnameOverride" }}
spec:
{{- if (index .Values "modules" "img2vec-neural" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "img2vec-neural" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: {{ index .Values "modules" "img2vec-neural" "fullnameOverride" }}
image: {{ index .Values "modules" "img2vec-neural" "registry" }}/{{ index .Values "modules" "img2vec-neural" "repo" }}:{{ index .Values "modules" "img2vec-neural" "tag" }}
env:
- name: ENABLE_CUDA
value: "{{ if index .Values "modules" "img2vec-neural" "envconfig" "enable_cuda" }}1{{ else }}0{{ end }}"
{{ if index .Values "modules" "img2vec-neural" "envconfig" "enable_cuda" }}
- name: NVIDIA_VISIBLE_DEVICES
value: {{ index .Values "modules" "img2vec-neural" "envconfig" "nvidia_visible_devices"}}
- name: NVIDIA_DRIVER_CAPABILITIES
value: {{ index .Values "modules" "img2vec-neural" "envconfig" "nvidia_driver_capabilities"}}
- name: LD_LIBRARY_PATH
value: {{ index .Values "modules" "img2vec-neural" "envconfig" "ld_library_path"}}
{{ end }}
resources:
{{ index .Values "modules" "img2vec-neural" "resources" | toYaml | indent 10 }}
livenessProbe:
httpGet:
path: /.well-known/live
port: 8080
initialDelaySeconds: {{ index .Values "modules" "img2vec-neural" "livenessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "img2vec-neural" "livenessProbe" "periodSeconds" }}
timeoutSeconds: {{ index .Values "modules" "img2vec-neural" "livenessProbe" "timeoutSeconds" }}
readinessProbe:
httpGet:
path: /.well-known/ready
port: 8080
initialDelaySeconds: {{ index .Values "modules" "img2vec-neural" "readinessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "img2vec-neural" "readinessProbe" "periodSeconds" }}
{{- with index .Values "modules" "img2vec-neural" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "img2vec-neural" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "img2vec-neural" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{ end }}
@@ -0,0 +1,17 @@
{{ if index .Values "modules" "img2vec-neural" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: {{ index .Values "modules" "img2vec-neural" "fullnameOverride" }}
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
type: ClusterIP
selector:
app: {{ index .Values "modules" "img2vec-neural" "fullnameOverride" }}
ports:
- protocol: TCP
port: 8080
targetPort: 8080
{{ end }}
@@ -0,0 +1,67 @@
{{ if index .Values "modules" "multi2vec-clip" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ index .Values "modules" "multi2vec-clip" "fullnameOverride" }}
labels:
name: {{ index .Values "modules" "multi2vec-clip" "fullnameOverride" }}
app: {{ index .Values "modules" "multi2vec-clip" "fullnameOverride" }}
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
replicas: {{ index .Values "modules" "multi2vec-clip" "replicas" }}
selector:
matchLabels:
app: {{ index .Values "modules" "multi2vec-clip" "fullnameOverride" }}
template:
metadata:
labels:
app: {{ index .Values "modules" "multi2vec-clip" "fullnameOverride" }}
spec:
{{- if (index .Values "modules" "multi2vec-clip" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "multi2vec-clip" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: {{ index .Values "modules" "multi2vec-clip" "fullnameOverride" }}
image: {{ index .Values "modules" "multi2vec-clip" "registry" }}/{{ index .Values "modules" "multi2vec-clip" "repo" }}:{{ index .Values "modules" "multi2vec-clip" "tag" }}
env:
- name: ENABLE_CUDA
value: "{{ if index .Values "modules" "multi2vec-clip" "envconfig" "enable_cuda" }}1{{ else }}0{{ end }}"
{{ if index .Values "modules" "multi2vec-clip" "envconfig" "enable_cuda" }}
- name: NVIDIA_VISIBLE_DEVICES
value: {{ index .Values "modules" "multi2vec-clip" "envconfig" "nvidia_visible_devices"}}
- name: NVIDIA_DRIVER_CAPABILITIES
value: {{ index .Values "modules" "multi2vec-clip" "envconfig" "nvidia_driver_capabilities"}}
- name: LD_LIBRARY_PATH
value: {{ index .Values "modules" "multi2vec-clip" "envconfig" "ld_library_path"}}
{{ end }}
resources:
{{ index .Values "modules" "multi2vec-clip" "resources" | toYaml | indent 10 }}
livenessProbe:
httpGet:
path: /.well-known/live
port: 8080
initialDelaySeconds: {{ index .Values "modules" "multi2vec-clip" "livenessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "multi2vec-clip" "livenessProbe" "periodSeconds" }}
timeoutSeconds: {{ index .Values "modules" "multi2vec-clip" "livenessProbe" "timeoutSeconds" }}
readinessProbe:
httpGet:
path: /.well-known/ready
port: 8080
initialDelaySeconds: {{ index .Values "modules" "multi2vec-clip" "readinessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "multi2vec-clip" "readinessProbe" "periodSeconds" }}
{{- with index .Values "modules" "multi2vec-clip" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "multi2vec-clip" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "multi2vec-clip" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{ end }}
@@ -0,0 +1,17 @@
{{ if index .Values "modules" "multi2vec-clip" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: {{ index .Values "modules" "multi2vec-clip" "fullnameOverride" }}
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
type: ClusterIP
selector:
app: {{ index .Values "modules" "multi2vec-clip" "fullnameOverride" }}
ports:
- protocol: TCP
port: 8080
targetPort: 8080
{{ end }}
@@ -0,0 +1,67 @@
{{ if index .Values "modules" "ner-transformers" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ index .Values "modules" "ner-transformers" "fullnameOverride" }}
labels:
name: {{ index .Values "modules" "ner-transformers" "fullnameOverride" }}
app: {{ index .Values "modules" "ner-transformers" "fullnameOverride" }}
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
replicas: {{ index .Values "modules" "ner-transformers" "replicas" }}
selector:
matchLabels:
app: {{ index .Values "modules" "ner-transformers" "fullnameOverride" }}
template:
metadata:
labels:
app: {{ index .Values "modules" "ner-transformers" "fullnameOverride" }}
spec:
{{- if (index .Values "modules" "ner-transformers" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "ner-transformers" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: {{ index .Values "modules" "ner-transformers" "fullnameOverride" }}
image: {{ index .Values "modules" "ner-transformers" "registry" }}/{{ index .Values "modules" "ner-transformers" "repo" }}:{{ index .Values "modules" "ner-transformers" "tag" }}
env:
- name: ENABLE_CUDA
value: "{{ if index .Values "modules" "ner-transformers" "envconfig" "enable_cuda" }}1{{ else }}0{{ end }}"
{{ if index .Values "modules" "ner-transformers" "envconfig" "enable_cuda" }}
- name: NVIDIA_VISIBLE_DEVICES
value: {{ index .Values "modules" "ner-transformers" "envconfig" "nvidia_visible_devices"}}
- name: NVIDIA_DRIVER_CAPABILITIES
value: {{ index .Values "modules" "ner-transformers" "envconfig" "nvidia_driver_capabilities"}}
- name: LD_LIBRARY_PATH
value: {{ index .Values "modules" "ner-transformers" "envconfig" "ld_library_path"}}
{{ end }}
resources:
{{ index .Values "modules" "ner-transformers" "resources" | toYaml | indent 10 }}
livenessProbe:
httpGet:
path: /.well-known/live
port: 8080
initialDelaySeconds: {{ index .Values "modules" "ner-transformers" "livenessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "ner-transformers" "livenessProbe" "periodSeconds" }}
timeoutSeconds: {{ index .Values "modules" "ner-transformers" "livenessProbe" "timeoutSeconds" }}
readinessProbe:
httpGet:
path: /.well-known/ready
port: 8080
initialDelaySeconds: {{ index .Values "modules" "ner-transformers" "readinessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "ner-transformers" "readinessProbe" "periodSeconds" }}
{{- with index .Values "modules" "ner-transformers" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "ner-transformers" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "ner-transformers" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{ end }}
@@ -0,0 +1,17 @@
{{ if index .Values "modules" "ner-transformers" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: {{ index .Values "modules" "ner-transformers" "fullnameOverride" }}
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
type: ClusterIP
selector:
app: {{ index .Values "modules" "ner-transformers" "fullnameOverride" }}
ports:
- protocol: TCP
port: 8080
targetPort: 8080
{{ end }}
@@ -0,0 +1,67 @@
{{ if index .Values "modules" "qna-transformers" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ index .Values "modules" "qna-transformers" "fullnameOverride" }}
labels:
name: {{ index .Values "modules" "qna-transformers" "fullnameOverride" }}
app: {{ index .Values "modules" "qna-transformers" "fullnameOverride" }}
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
replicas: {{ index .Values "modules" "qna-transformers" "replicas" }}
selector:
matchLabels:
app: {{ index .Values "modules" "qna-transformers" "fullnameOverride" }}
template:
metadata:
labels:
app: {{ index .Values "modules" "qna-transformers" "fullnameOverride" }}
spec:
{{- if (index .Values "modules" "qna-transformers" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "qna-transformers" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: {{ index .Values "modules" "qna-transformers" "fullnameOverride" }}
image: {{ index .Values "modules" "qna-transformers" "registry" }}/{{ index .Values "modules" "qna-transformers" "repo" }}:{{ index .Values "modules" "qna-transformers" "tag" }}
env:
- name: ENABLE_CUDA
value: "{{ if index .Values "modules" "qna-transformers" "envconfig" "enable_cuda" }}1{{ else }}0{{ end }}"
{{ if index .Values "modules" "qna-transformers" "envconfig" "enable_cuda" }}
- name: NVIDIA_VISIBLE_DEVICES
value: {{ index .Values "modules" "qna-transformers" "envconfig" "nvidia_visible_devices"}}
- name: NVIDIA_DRIVER_CAPABILITIES
value: {{ index .Values "modules" "qna-transformers" "envconfig" "nvidia_driver_capabilities"}}
- name: LD_LIBRARY_PATH
value: {{ index .Values "modules" "qna-transformers" "envconfig" "ld_library_path"}}
{{ end }}
resources:
{{ index .Values "modules" "qna-transformers" "resources" | toYaml | indent 10 }}
livenessProbe:
httpGet:
path: /.well-known/live
port: 8080
initialDelaySeconds: {{ index .Values "modules" "qna-transformers" "livenessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "qna-transformers" "livenessProbe" "periodSeconds" }}
timeoutSeconds: {{ index .Values "modules" "qna-transformers" "livenessProbe" "timeoutSeconds" }}
readinessProbe:
httpGet:
path: /.well-known/ready
port: 8080
initialDelaySeconds: {{ index .Values "modules" "qna-transformers" "readinessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "qna-transformers" "readinessProbe" "periodSeconds" }}
{{- with index .Values "modules" "qna-transformers" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "qna-transformers" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "qna-transformers" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{ end }}
@@ -0,0 +1,17 @@
{{ if index .Values "modules" "qna-transformers" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: {{ index .Values "modules" "qna-transformers" "fullnameOverride" }}
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
type: ClusterIP
selector:
app: {{ index .Values "modules" "qna-transformers" "fullnameOverride" }}
ports:
- protocol: TCP
port: 8080
targetPort: 8080
{{ end }}
+19
View File
@@ -0,0 +1,19 @@
{{ if and (index .Values "backups" "s3" "enabled") (index .Values "backups" "s3" "secrets") }}
{{- if or (index .Values "backups" "s3" "secrets" "AWS_ACCESS_KEY_ID") (index .Values "backups" "s3" "secrets" "AWS_SECRET_ACCESS_KEY") }}
apiVersion: v1
kind: Secret
metadata:
name: backup-s3
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
type: Opaque
data:
{{- if index .Values "backups" "s3" "secrets" "AWS_ACCESS_KEY_ID" }}
AWS_ACCESS_KEY_ID: {{ index .Values "backups" "s3" "secrets" "AWS_ACCESS_KEY_ID" | b64enc }}
{{- end }}
{{- if index .Values "backups" "s3" "secrets" "AWS_SECRET_ACCESS_KEY" }}
AWS_SECRET_ACCESS_KEY: {{ index .Values "backups" "s3" "secrets" "AWS_SECRET_ACCESS_KEY" | b64enc }}
{{- end }}
{{- end }}
{{ end }}
@@ -0,0 +1,67 @@
{{ if index .Values "modules" "sum-transformers" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ index .Values "modules" "sum-transformers" "fullnameOverride" }}
labels:
name: {{ index .Values "modules" "sum-transformers" "fullnameOverride" }}
app: {{ index .Values "modules" "sum-transformers" "fullnameOverride" }}
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
replicas: {{ index .Values "modules" "sum-transformers" "replicas" }}
selector:
matchLabels:
app: {{ index .Values "modules" "sum-transformers" "fullnameOverride" }}
template:
metadata:
labels:
app: {{ index .Values "modules" "sum-transformers" "fullnameOverride" }}
spec:
{{- if (index .Values "modules" "sum-transformers" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "sum-transformers" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: {{ index .Values "modules" "sum-transformers" "fullnameOverride" }}
image: {{ index .Values "modules" "sum-transformers" "registry" }}/{{ index .Values "modules" "sum-transformers" "repo" }}:{{ index .Values "modules" "sum-transformers" "tag" }}
env:
- name: ENABLE_CUDA
value: "{{ if index .Values "modules" "sum-transformers" "envconfig" "enable_cuda" }}1{{ else }}0{{ end }}"
{{ if index .Values "modules" "sum-transformers" "envconfig" "enable_cuda" }}
- name: NVIDIA_VISIBLE_DEVICES
value: {{ index .Values "modules" "sum-transformers" "envconfig" "nvidia_visible_devices"}}
- name: NVIDIA_DRIVER_CAPABILITIES
value: {{ index .Values "modules" "sum-transformers" "envconfig" "nvidia_driver_capabilities"}}
- name: LD_LIBRARY_PATH
value: {{ index .Values "modules" "sum-transformers" "envconfig" "ld_library_path"}}
{{ end }}
resources:
{{ index .Values "modules" "sum-transformers" "resources" | toYaml | indent 10 }}
livenessProbe:
httpGet:
path: /.well-known/live
port: 8080
initialDelaySeconds: {{ index .Values "modules" "sum-transformers" "livenessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "sum-transformers" "livenessProbe" "periodSeconds" }}
timeoutSeconds: {{ index .Values "modules" "sum-transformers" "livenessProbe" "timeoutSeconds" }}
readinessProbe:
httpGet:
path: /.well-known/ready
port: 8080
initialDelaySeconds: {{ index .Values "modules" "sum-transformers" "readinessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "sum-transformers" "readinessProbe" "periodSeconds" }}
{{- with index .Values "modules" "sum-transformers" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "sum-transformers" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "sum-transformers" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{ end }}
@@ -0,0 +1,17 @@
{{ if index .Values "modules" "sum-transformers" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: {{ index .Values "modules" "sum-transformers" "fullnameOverride" }}
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
type: ClusterIP
selector:
app: {{ index .Values "modules" "sum-transformers" "fullnameOverride" }}
ports:
- protocol: TCP
port: 8080
targetPort: 8080
{{ end }}
@@ -0,0 +1,56 @@
{{ if index .Values "modules" "text-spellcheck" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ index .Values "modules" "text-spellcheck" "fullnameOverride" }}
labels:
name: {{ index .Values "modules" "text-spellcheck" "fullnameOverride" }}
app: {{ index .Values "modules" "text-spellcheck" "fullnameOverride" }}
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
replicas: {{ index .Values "modules" "text-spellcheck" "replicas" }}
selector:
matchLabels:
app: {{ index .Values "modules" "text-spellcheck" "fullnameOverride" }}
template:
metadata:
labels:
app: {{ index .Values "modules" "text-spellcheck" "fullnameOverride" }}
spec:
{{- if (index .Values "modules" "text-spellcheck" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "text-spellcheck" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: {{ index .Values "modules" "text-spellcheck" "fullnameOverride" }}
image: {{ index .Values "modules" "text-spellcheck" "registry" }}/{{ index .Values "modules" "text-spellcheck" "repo" }}:{{ index .Values "modules" "text-spellcheck" "tag" }}
resources:
{{ index .Values "modules" "text-spellcheck" "resources" | toYaml | indent 10 }}
livenessProbe:
httpGet:
path: /.well-known/live
port: 8080
initialDelaySeconds: {{ index .Values "modules" "text-spellcheck" "livenessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "text-spellcheck" "livenessProbe" "periodSeconds" }}
timeoutSeconds: {{ index .Values "modules" "text-spellcheck" "livenessProbe" "timeoutSeconds" }}
readinessProbe:
httpGet:
path: /.well-known/ready
port: 8080
initialDelaySeconds: {{ index .Values "modules" "text-spellcheck" "readinessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "text-spellcheck" "readinessProbe" "periodSeconds" }}
{{- with index .Values "modules" "text-spellcheck" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text-spellcheck" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text-spellcheck" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{ end }}
@@ -0,0 +1,18 @@
{{ if index .Values "modules" "text-spellcheck" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: {{ index .Values "modules" "text-spellcheck" "fullnameOverride" }}
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
type: ClusterIP
selector:
app: {{ index .Values "modules" "text-spellcheck" "fullnameOverride" }}
ports:
- protocol: TCP
port: 8080
targetPort: 8080
{{ end }}
@@ -0,0 +1,207 @@
{{ if index .Values "modules" "text2vec-transformers" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ index .Values "modules" "text2vec-transformers" "fullnameOverride" }}
labels:
name: {{ index .Values "modules" "text2vec-transformers" "fullnameOverride" }}
app: {{ index .Values "modules" "text2vec-transformers" "fullnameOverride" }}
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
replicas: {{ index .Values "modules" "text2vec-transformers" "replicas" }}
selector:
matchLabels:
app: {{ index .Values "modules" "text2vec-transformers" "fullnameOverride" }}
template:
metadata:
labels:
app: {{ index .Values "modules" "text2vec-transformers" "fullnameOverride" }}
spec:
{{- if (index .Values "modules" "text2vec-transformers" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "text2vec-transformers" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: {{ index .Values "modules" "text2vec-transformers" "fullnameOverride" }}
image: {{ index .Values "modules" "text2vec-transformers" "registry" }}/{{ index .Values "modules" "text2vec-transformers" "repo" }}:{{ index .Values "modules" "text2vec-transformers" "tag" }}
env:
- name: ENABLE_CUDA
value: "{{ if index .Values "modules" "text2vec-transformers" "envconfig" "enable_cuda" }}1{{ else }}0{{ end }}"
{{- if index .Values "modules" "text2vec-transformers" "envconfig" "enable_cuda" }}
- name: NVIDIA_VISIBLE_DEVICES
value: {{ index .Values "modules" "text2vec-transformers" "envconfig" "nvidia_visible_devices"}}
- name: NVIDIA_DRIVER_CAPABILITIES
value: {{ index .Values "modules" "text2vec-transformers" "envconfig" "nvidia_driver_capabilities"}}
- name: LD_LIBRARY_PATH
value: {{ index .Values "modules" "text2vec-transformers" "envconfig" "ld_library_path"}}
{{- end }}
resources:
{{ index .Values "modules" "text2vec-transformers" "resources" | toYaml | indent 10 }}
livenessProbe:
httpGet:
path: /.well-known/live
port: 8080
{{- if (index .Values "modules" "text2vec-transformers" "probeInitialDelaySeconds") }}
initialDelaySeconds: {{ index .Values "modules" "text2vec-transformers" "probeInitialDelaySeconds" }}
{{- else }}
initialDelaySeconds: {{ index .Values "modules" "text2vec-transformers" "livenessProbe" "initialDelaySeconds" }}
{{- end }}
periodSeconds: {{ index .Values "modules" "text2vec-transformers" "livenessProbe" "periodSeconds" }}
timeoutSeconds: {{ index .Values "modules" "text2vec-transformers" "livenessProbe" "timeoutSeconds" }}
readinessProbe:
httpGet:
path: /.well-known/ready
port: 8080
{{- if (index .Values "modules" "text2vec-transformers" "probeInitialDelaySeconds") }}
initialDelaySeconds: {{ index .Values "modules" "text2vec-transformers" "probeInitialDelaySeconds" }}
{{- else }}
initialDelaySeconds: {{ index .Values "modules" "text2vec-transformers" "readinessProbe" "initialDelaySeconds" }}
{{- end }}
periodSeconds: {{ index .Values "modules" "text2vec-transformers" "readinessProbe" "periodSeconds" }}
{{- with index .Values "modules" "text2vec-transformers" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text2vec-transformers" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text2vec-transformers" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{ else }}
{{- if index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "fullnameOverride" }}
labels:
name: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "fullnameOverride" }}
app: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "fullnameOverride" }}
spec:
replicas: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "replicas" }}
selector:
matchLabels:
app: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "fullnameOverride" }}
template:
metadata:
labels:
app: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "fullnameOverride" }}
spec:
{{- if (index .Values "modules" "text2vec-transformers" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "text2vec-transformers" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "fullnameOverride" }}
image: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "registry" }}/{{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "repo" }}:{{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "tag" }}
env:
- name: ENABLE_CUDA
value: "{{ if index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "envconfig" "enable_cuda" }}1{{ else }}0{{ end }}"
{{- if index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "envconfig" "enable_cuda" }}
- name: NVIDIA_VISIBLE_DEVICES
value: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "envconfig" "nvidia_visible_devices"}}
- name: NVIDIA_DRIVER_CAPABILITIES
value: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "envconfig" "nvidia_driver_capabilities"}}
- name: LD_LIBRARY_PATH
value: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "envconfig" "ld_library_path"}}
{{- end }}
resources:
{{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "resources" | toYaml | indent 10 }}
livenessProbe:
httpGet:
path: /.well-known/live
port: 8080
initialDelaySeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "livenessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "livenessProbe" "periodSeconds" }}
timeoutSeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "livenessProbe" "timeoutSeconds" }}
readinessProbe:
httpGet:
path: /.well-known/ready
port: 8080
initialDelaySeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "readinessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "readinessProbe" "periodSeconds" }}
{{- with index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- end }}
---
{{- if index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "enabled" }}
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "fullnameOverride" }}
labels:
name: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "fullnameOverride" }}
app: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "fullnameOverride" }}
spec:
replicas: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "replicas" }}
selector:
matchLabels:
app: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "fullnameOverride" }}
template:
metadata:
labels:
app: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "fullnameOverride" }}
spec:
{{- if (index .Values "modules" "text2vec-transformers" "serviceAccountName") }}
serviceAccountName: {{ index .Values "modules" "text2vec-transformers" "serviceAccountName" }}
{{- else if (index .Values "serviceAccountName") }}
serviceAccountName: {{ index .Values "serviceAccountName" }}
{{- end }}
containers:
- name: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "fullnameOverride" }}
image: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "registry" }}/{{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "repo" }}:{{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "tag" }}
env:
- name: ENABLE_CUDA
value: "{{ if index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "envconfig" "enable_cuda" }}1{{ else }}0{{ end }}"
{{- if index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "envconfig" "enable_cuda" }}
- name: NVIDIA_VISIBLE_DEVICES
value: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "envconfig" "nvidia_visible_devices"}}
- name: NVIDIA_DRIVER_CAPABILITIES
value: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "envconfig" "nvidia_driver_capabilities"}}
- name: LD_LIBRARY_PATH
value: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "envconfig" "ld_library_path"}}
{{- end }}
resources:
{{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "resources" | toYaml | indent 10 }}
livenessProbe:
httpGet:
path: /.well-known/live
port: 8080
initialDelaySeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "livenessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "livenessProbe" "periodSeconds" }}
timeoutSeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "livenessProbe" "timeoutSeconds" }}
readinessProbe:
httpGet:
path: /.well-known/ready
port: 8080
initialDelaySeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "readinessProbe" "initialDelaySeconds" }}
periodSeconds: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "readinessProbe" "periodSeconds" }}
{{- with index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "nodeSelector" | default .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "affinity" | default .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "tolerations" | default .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- end }}
{{ end }}
@@ -0,0 +1,47 @@
{{ if index .Values "modules" "text2vec-transformers" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: {{ index .Values "modules" "text2vec-transformers" "fullnameOverride" }}
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
type: ClusterIP
selector:
app: {{ index .Values "modules" "text2vec-transformers" "fullnameOverride" }}
ports:
- protocol: TCP
port: 8080
targetPort: 8080
{{ else }}
{{ if index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "fullnameOverride" }}
spec:
type: ClusterIP
selector:
app: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "fullnameOverride" }}
ports:
- protocol: TCP
port: 8080
targetPort: 8080
{{ end }}
---
{{ if index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "enabled" }}
apiVersion: v1
kind: Service
metadata:
name: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "fullnameOverride" }}
spec:
type: ClusterIP
selector:
app: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "fullnameOverride" }}
ports:
- protocol: TCP
port: 8080
targetPort: 8080
{{ end }}
{{ end }}
@@ -0,0 +1,23 @@
{{ if not .Values.custom_config_map.enabled }}
apiVersion: v1
kind: ConfigMap
metadata:
name: weaviate-config
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
data:
conf.yaml: |-
---
authentication:
{{ toYaml .Values.authentication | nindent 6 | trim }}
authorization:
{{ toYaml .Values.authorization | nindent 6 | trim }}
{{ if index .Values "modules" "text2vec-contextionary" "enabled" }}
contextionary:
url: {{ index .Values "modules" "text2vec-contextionary" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:9999
{{ end }}
query_defaults:
{{ toYaml .Values.query_defaults | nindent 6 | trim }}
debug: {{ .Values.debug }}
{{ end }}
@@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
name: {{ .Values.service.name }}-headless
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
type: ClusterIP
clusterIP: None
selector:
app: weaviate
ports:
- protocol: TCP
port: 80
targetPort: {{ .Values.env.CLUSTER_GOSSIP_BIND_PORT }}
publishNotReadyAddresses: true
@@ -0,0 +1,12 @@
{{ if and (index .Values "modules" "text2vec-cohere" "enabled") (index .Values "modules" "text2vec-cohere" "apiKey") }}
apiVersion: v1
kind: Secret
metadata:
name: weaviate-cohere
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
type: Opaque
data:
apiKey: {{ index .Values "modules" "text2vec-cohere" "apiKey" | b64enc }}
{{ end }}
@@ -0,0 +1,12 @@
{{ if and (index .Values "modules" "text2vec-huggingface" "enabled") (index .Values "modules" "text2vec-huggingface" "apiKey") }}
apiVersion: v1
kind: Secret
metadata:
name: weaviate-huggingface
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
type: Opaque
data:
apiKey: {{ index .Values "modules" "text2vec-huggingface" "apiKey" | b64enc }}
{{ end }}
@@ -0,0 +1,38 @@
{{- $t2vOpenAI := and (index .Values "modules" "text2vec-openai" "enabled") (index .Values "modules" "text2vec-openai" "apiKey") -}}
{{- $qnaOpenAI := and (index .Values "modules" "qna-openai" "enabled") (index .Values "modules" "qna-openai" "apiKey") }}
{{- $generativeOpenAI := and (index .Values "modules" "generative-openai" "enabled") (index .Values "modules" "generative-openai" "apiKey") }}
{{- $openAI := or ($t2vOpenAI) ($qnaOpenAI) ($generativeOpenAI) }}
{{- if $openAI }}
{{- $apiKeys := list }}
{{- if $t2vOpenAI }}
{{- $apiKeys = append $apiKeys (index .Values "modules" "text2vec-openai" "apiKey") -}}
{{- end }}
{{- if $qnaOpenAI }}
{{- $apiKeys = append $apiKeys (index .Values "modules" "qna-openai" "apiKey") -}}
{{- end }}
{{- if $generativeOpenAI }}
{{- $apiKeys = append $apiKeys (index .Values "modules" "generative-openai" "apiKey") -}}
{{- end }}
{{- if gt (len ($apiKeys | uniq)) 1 -}}
{{- fail "OpenAI modules activated, but their keys differ. Use the same key on all activated OpenAI modules." }}
{{- end }}
apiVersion: v1
kind: Secret
metadata:
name: weaviate-openai
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
type: Opaque
data:
{{- if (index .Values "modules" "qna-openai" "apiKey") }}
apiKey: {{ index .Values "modules" "qna-openai" "apiKey" | b64enc }}
{{- else if (index .Values "modules" "generative-openai" "apiKey") }}
apiKey: {{ index .Values "modules" "generative-openai" "apiKey" | b64enc }}
{{- else }}
apiKey: {{ index .Values "modules" "text2vec-openai" "apiKey" | b64enc }}
{{- end }}
{{- end }}
@@ -0,0 +1,32 @@
apiVersion: v1
kind: Service
metadata:
name: {{ .Values.service.name }}
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
{{- with .Values.service.annotations }}
annotations: {{ toYaml . | nindent 4 }}
{{- end }}
spec:
type: {{ .Values.service.type }}
selector:
app: weaviate
ports:
{{- range .Values.service.ports }}
- {{ toYaml . | indent 6 | trim }}
targetPort: 8080
{{- end }}
{{ if eq .Values.service.type "ClusterIP" -}}
{{ if .Values.service.clusterIP }}
clusterIP: {{ .Values.service.clusterIP }}
{{ end }}
{{ end }}
{{ if eq .Values.service.type "LoadBalancer" -}}
{{- if gt (len .Values.service.loadBalancerSourceRanges) 0 }}
loadBalancerSourceRanges:
{{- range $_, $sourceRange := .Values.service.loadBalancerSourceRanges }}
- {{ $sourceRange }}
{{ end -}}
{{- end -}}
{{- end }}
@@ -0,0 +1,345 @@
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: weaviate
labels:
name: weaviate
app: weaviate
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
replicas: {{ .Values.replicas }}
serviceName: {{ .Values.service.name }}-headless
selector:
matchLabels:
app: weaviate
template:
metadata:
labels:
app: weaviate
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
{{- with .Values.annotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- if (index .Values "serviceAccountName") }}
serviceAccountName: {{ .Values.serviceAccountName }}
{{- else if and (index .Values "backups" "s3" "enabled") (index .Values "backups" "s3" "serviceAccountName") }} # for backwards compatibility
serviceAccountName: {{ .Values.backups.s3.serviceAccountName }}
{{- end }}
terminationGracePeriodSeconds: {{ .Values.terminationGracePeriodSeconds }}
containers:
- name: weaviate
image: '{{ .Values.image.registry }}/{{ .Values.image.repo }}:{{ .Values.image.tag }}'
imagePullPolicy: Always
{{- with .Values.command }}
command: {{ toYaml . | nindent 10 }}
{{- end }}
{{- with .Values.args }}
args: {{ toYaml . | nindent 10 }}
{{- end }}
resources:
{{ toYaml .Values.resources | indent 10 }}
env:
{{- if or $.Values.env $.Values.envSecrets }}
{{- range $key, $value := $.Values.env }}
- name: {{ $key }}
value: {{ $value | quote }}
{{- end }}
{{- range $key, $secret := $.Values.envSecrets }}
- name: {{ $key }}
valueFrom:
secretKeyRef:
name: {{ $secret }}
key: {{ $key | quote }}
{{- end }}
{{- end }}
- name: STANDALONE_MODE
value: 'true'
- name: PERSISTENCE_DATA_PATH
value: '/var/lib/weaviate'
- name: DEFAULT_VECTORIZER_MODULE
value: {{ index .Values "modules" "default_vectorizer_module" | trim }}
{{ template "enabled_modules" . }}
{{- if index .Values "modules" "text2vec-transformers" "enabled" }}
- name: TRANSFORMERS_INFERENCE_API
value: http://{{ index .Values "modules" "text2vec-transformers" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:8080
{{- else if index .Values "modules" "text2vec-transformers" "inferenceUrl" }}
- name: TRANSFORMERS_INFERENCE_API
value: {{ index .Values "modules" "text2vec-transformers" "inferenceUrl" }}
{{- else }}
{{- if index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "enabled" }}
- name: TRANSFORMERS_PASSAGE_INFERENCE_API
value: http://{{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:8080
{{- else if index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "inferenceUrl" }}
- name: TRANSFORMERS_PASSAGE_INFERENCE_API
value: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "passage" "inferenceUrl" }}
{{- end }}
{{- if index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "enabled" }}
- name: TRANSFORMERS_QUERY_INFERENCE_API
value: http://{{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:8080
{{- else if index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "inferenceUrl" }}
- name: TRANSFORMERS_QUERY_INFERENCE_API
value: {{ index .Values "modules" "text2vec-transformers" "passageQueryServices" "query" "inferenceUrl" }}
{{- end }}
{{- end }}
{{- if index .Values "modules" "multi2vec-clip" "enabled" }}
- name: CLIP_INFERENCE_API
value: http://{{ index .Values "modules" "multi2vec-clip" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:8080
{{- else if index .Values "modules" "multi2vec-clip" "inferenceUrl" }}
- name: CLIP_INFERENCE_API
value: {{ index .Values "modules" "multi2vec-clip" "inferenceUrl" }}
{{- end }}
{{- if index .Values "modules" "qna-transformers" "enabled" }}
- name: QNA_INFERENCE_API
value: http://{{ index .Values "modules" "qna-transformers" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:8080
{{- else if index .Values "modules" "qna-transformers" "inferenceUrl" }}
- name: QNA_INFERENCE_API
value: {{ index .Values "modules" "qna-transformers" "inferenceUrl" }}
{{- end }}
{{- if index .Values "modules" "img2vec-neural" "enabled" }}
- name: IMAGE_INFERENCE_API
value: http://{{ index .Values "modules" "img2vec-neural" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:8080
{{- else if index .Values "modules" "img2vec-neural" "inferenceUrl" }}
- name: IMAGE_INFERENCE_API
value: {{ index .Values "modules" "img2vec-neural" "inferenceUrl" }}
{{- end }}
{{- if index .Values "modules" "text-spellcheck" "enabled" }}
- name: SPELLCHECK_INFERENCE_API
value: http://{{ index .Values "modules" "text-spellcheck" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:8080
{{- else if index .Values "modules" "text-spellcheck" "inferenceUrl" }}
- name: SPELLCHECK_INFERENCE_API
value: {{ index .Values "modules" "text-spellcheck" "inferenceUrl" }}
{{- end }}
{{- if index .Values "modules" "ner-transformers" "enabled" }}
- name: NER_INFERENCE_API
value: http://{{ index .Values "modules" "ner-transformers" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:8080
{{- else if index .Values "modules" "ner-transformers" "inferenceUrl" }}
- name: NER_INFERENCE_API
value: {{ index .Values "modules" "ner-transformers" "inferenceUrl" }}
{{- end }}
{{- if index .Values "modules" "sum-transformers" "enabled" }}
- name: SUM_INFERENCE_API
value: http://{{ index .Values "modules" "sum-transformers" "fullnameOverride" }}.{{ .Release.Namespace }}.svc.cluster.local:8080
{{- else if index .Values "modules" "sum-transformers" "inferenceUrl" }}
- name: SUM_INFERENCE_API
value: {{ index .Values "modules" "sum-transformers" "inferenceUrl" }}
{{- end }}
{{ if or (and (index .Values "modules" "text2vec-openai" "enabled") (index .Values "modules" "text2vec-openai" "apiKey")) (and (index .Values "modules" "qna-openai" "enabled") (index .Values "modules" "qna-openai" "apiKey")) (and (index .Values "modules" "generative-openai" "enabled") (index .Values "modules" "generative-openai" "apiKey")) }}
- name: OPENAI_APIKEY
valueFrom:
secretKeyRef:
name: weaviate-openai
key: apiKey
{{- end }}
{{- if and (index .Values "modules" "text2vec-huggingface" "enabled") (index .Values "modules" "text2vec-huggingface" "apiKey") }}
- name: HUGGINGFACE_APIKEY
valueFrom:
secretKeyRef:
name: weaviate-huggingface
key: apiKey
{{- end }}
{{- if and (index .Values "modules" "text2vec-cohere" "enabled") (index .Values "modules" "text2vec-cohere" "apiKey") }}
- name: COHERE_APIKEY
valueFrom:
secretKeyRef:
name: weaviate-cohere
key: apiKey
{{- end }}
{{- if and (index .Values "backups" "filesystem" "enabled") (index .Values "backups" "filesystem" "envconfig") }}
{{- range $key, $value := index .Values "backups" "filesystem" "envconfig" }}
- name: {{ $key }}
value: {{ $value | quote }}
{{- end }}
{{- end }}
{{- if index .Values "backups" "s3" "enabled" }}
{{- if index .Values "backups" "s3" "envconfig" }}
{{- range $key, $value := index .Values "backups" "s3" "envconfig" }}
- name: {{ $key }}
value: {{ $value | quote }}
{{- end }}
{{- end }}
{{- if index .Values "backups" "s3" "envSecrets" }}
{{- range $key, $secret := $.Values.backups.s3.envSecrets }}
- name: {{ $key }}
valueFrom:
secretKeyRef:
name: {{ $secret }}
key: {{ $key | quote }}
{{- end }}
{{- end }}
{{- if and (index .Values "backups" "s3" "secrets") (index .Values "backups" "s3" "secrets" "AWS_ACCESS_KEY_ID") }}
- name: AWS_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
name: backup-s3
key: AWS_ACCESS_KEY_ID
{{- end }}
{{- if and (index .Values "backups" "s3" "secrets") (index .Values "backups" "s3" "secrets" "AWS_SECRET_ACCESS_KEY") }}
- name: AWS_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
name: backup-s3
key: AWS_SECRET_ACCESS_KEY
{{- end }}
{{- end }}
{{- if index .Values "backups" "gcs" "enabled" }}
{{- if index .Values "backups" "gcs" "envconfig" }}
{{- range $key, $value := index .Values "backups" "gcs" "envconfig" }}
- name: {{ $key }}
value: {{ $value | quote }}
{{- end }}
{{- end }}
{{- if or (index .Values "backups" "gcs" "secrets") (index .Values "backups" "gcs" "envSecrets") }}
{{- if or (index .Values "backups" "gcs" "secrets" "GOOGLE_APPLICATION_CREDENTIALS") (index .Values "backups" "gcs" "envSecrets" "GOOGLE_APPLICATION_CREDENTIALS") }}
- name: GOOGLE_APPLICATION_CREDENTIALS
value: "/etc/gcp/credentials.json"
{{- end }}
{{- end }}
{{- end }}
{{- if index .Values "backups" "azure" "enabled" }}
{{- if index .Values "backups" "azure" "envconfig" }}
{{- range $key, $value := index .Values "backups" "azure" "envconfig" }}
- name: {{ $key }}
value: {{ $value | quote }}
{{- end }}
{{- end }}
{{- if index .Values "backups" "azure" "envSecrets" }}
{{- range $key, $secret := $.Values.backups.azure.envSecrets }}
- name: {{ $key }}
valueFrom:
secretKeyRef:
name: {{ $secret }}
key: {{ $key | quote }}
{{- end }}
{{- end }}
{{- if and (index .Values "backups" "azure" "secrets") (index .Values "backups" "azure" "secrets" "AZURE_STORAGE_ACCOUNT") }}
- name: AZURE_STORAGE_ACCOUNT
valueFrom:
secretKeyRef:
name: backup-azure
key: AZURE_STORAGE_ACCOUNT
{{- end }}
{{- if and (index .Values "backups" "azure" "secrets") (index .Values "backups" "azure" "secrets" "AZURE_STORAGE_KEY") }}
- name: AZURE_STORAGE_KEY
valueFrom:
secretKeyRef:
name: backup-azure
key: AZURE_STORAGE_KEY
{{- end }}
{{- if and (index .Values "backups" "azure" "secrets") (index .Values "backups" "azure" "secrets" "AZURE_STORAGE_CONNECTION_STRING") }}
- name: AZURE_STORAGE_CONNECTION_STRING
valueFrom:
secretKeyRef:
name: backup-azure
key: AZURE_STORAGE_CONNECTION_STRING
{{- end }}
{{- end }}
- name: CLUSTER_JOIN
value: {{ .Values.service.name }}-headless.{{ .Release.Namespace }}.svc.cluster.local
ports:
- containerPort: 8080
{{- if .Values.env.PROMETHEUS_MONITORING_ENABLED }}
- name: metrics
containerPort: 2112
protocol: TCP
{{- end }}
volumeMounts:
- name: weaviate-config
mountPath: /weaviate-config
- name: weaviate-data
mountPath: /var/lib/weaviate
{{- if index .Values "backups" "gcs" "enabled" }}
{{- if or (index .Values "backups" "gcs" "secrets") (index .Values "backups" "gcs" "envSecrets") }}
{{- if or (index .Values "backups" "gcs" "secrets" "GOOGLE_APPLICATION_CREDENTIALS") (index .Values "backups" "gcs" "envSecrets" "GOOGLE_APPLICATION_CREDENTIALS") }}
- name: gcs-service-account-credentials-volume
mountPath: /etc/gcp
readOnly: true
{{- end }}
{{- end }}
{{- end }}
{{- if .Values.startupProbe.enabled }}
startupProbe:
httpGet:
path: /v1/.well-known/ready
port: 8080
initialDelaySeconds: {{ .Values.startupProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.startupProbe.periodSeconds }}
failureThreshold: {{ .Values.startupProbe.failureThreshold }}
successThreshold: {{ .Values.startupProbe.successThreshold }}
timeoutSeconds: {{ .Values.startupProbe.timeoutSeconds }}
{{- end }}
livenessProbe:
httpGet:
path: /v1/.well-known/live
port: 8080
initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
failureThreshold: {{ .Values.livenessProbe.failureThreshold }}
successThreshold: {{ .Values.livenessProbe.successThreshold }}
timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
readinessProbe:
httpGet:
path: /v1/.well-known/ready
port: 8080
initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }}
periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
failureThreshold: {{ .Values.readinessProbe.failureThreshold }}
successThreshold: {{ .Values.readinessProbe.successThreshold }}
timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }}
volumes:
- name: weaviate-config
configMap:
{{ if .Values.custom_config_map.enabled }}name: {{ .Values.custom_config_map.name }} {{ else }}name: weaviate-config{{ end }}
# - name: weaviate-persistence-data-vol
# persistentVolumeClaim:
# {{ if empty .Values.storage.fullnameOverride }}
# claimName: weaviate-persistence-data
# {{ else }}
# claimName: {{ .Values.storage.fullnameOverride }}
# {{ end }}
{{- if index .Values "backups" "gcs" "enabled" }}
{{- if and (index .Values "backups" "gcs" "secrets") (index .Values "backups" "gcs" "secrets" "GOOGLE_APPLICATION_CREDENTIALS") }}
- name: gcs-service-account-credentials-volume
secret:
secretName: backup-gcs
items:
- key: GOOGLE_APPLICATION_CREDENTIALS
path: credentials.json
{{- end }}
{{- if and (index .Values "backups" "gcs" "envSecrets") (index .Values "backups" "gcs" "envSecrets" "GOOGLE_APPLICATION_CREDENTIALS") }}
- name: gcs-service-account-credentials-volume
secret:
secretName: {{ index .Values "backups" "gcs" "envSecrets" "GOOGLE_APPLICATION_CREDENTIALS" }}
items:
- key: GOOGLE_APPLICATION_CREDENTIALS
path: credentials.json
{{- end }}
{{- end }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{ toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{ toYaml . | nindent 8 }}
{{- end }}
volumeClaimTemplates:
- metadata:
name: weaviate-data
labels:
app.kubernetes.io/name: weaviate
app.kubernetes.io/managed-by: helm
spec:
accessModes: [ "ReadWriteOnce" ]
storageClassName: {{ .Values.storage.storageClassName }}
resources:
requests:
storage: {{ .Values.storage.size }}