39 lines
1.6 KiB
YAML
39 lines
1.6 KiB
YAML
{{- $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 }}
|