Files
dify/templates/sandbox-deployment.yaml

129 lines
5.1 KiB
YAML

{{- if and .Values.sandbox.enabled}}
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
{{ include "dify.ud.annotations" . | indent 4 }}
descriptions: sandbox
labels:
{{- include "dify.labels" . | nindent 4 }}
component: sandbox
# app: {{ template "dify.sandbox.fullname" . }}
{{ include "dify.ud.labels" . | indent 4 }}
name: {{ template "dify.sandbox.fullname" . }}
spec:
replicas: {{ .Values.sandbox.replicas }}
selector:
matchLabels:
{{- include "dify.selectorLabels" . | nindent 6 }}
component: sandbox
{{/*
# Required labels for istio
# app: {{ template "dify.sandbox.fullname" . }}
# version: {{ .Values.istioServiceMesh.version | quote }}
*/}}
{{- if .Values.sandbox.updateStrategy }}
strategy: {{- toYaml .Values.sandbox.updateStrategy | nindent 4 }}
{{- end }}
template:
metadata:
annotations:
checksum/sandbox-config: {{ include (print $.Template.BasePath "/sandbox-config.yaml") . | sha256sum }}
checksum/sandbox-secret: {{ include (print $.Template.BasePath "/sandbox-secret.yaml") . | sha256sum }}
{{ include "dify.ud.annotations" . | indent 8 }}
labels:
{{- include "dify.selectorLabels" . | nindent 8 }}
component: sandbox
{{/*
# Required labels for istio
# app: {{ template "dify.sandbox.fullname" . }}
# version: {{ .Values.istioServiceMesh.version | quote }}
*/}}
{{ include "dify.ud.labels" . | indent 8 }}
spec:
serviceAccountName: {{ include "dify.sandbox.serviceAccountName" . }}
{{- if .Values.sandbox.priorityClassName }}
priorityClassName: {{ .Values.sandbox.priorityClassName | quote }}
{{- end }}
{{- if .Values.image.sandbox.pullSecrets }}
imagePullSecrets:
{{- range .Values.image.sandbox.pullSecrets }}
- name: {{ . }}
{{- end }}
{{- end }}
{{- if .Values.sandbox.podSecurityContext }}
securityContext:
{{ toYaml .Values.sandbox.podSecurityContext | indent 8 }}
{{- end }}
containers:
- image: "{{ .Values.image.sandbox.repository }}:{{ .Values.image.sandbox.tag }}"
imagePullPolicy: "{{ .Values.image.sandbox.pullPolicy }}"
name: sandbox
{{- if .Values.sandbox.customLivenessProbe }}
livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.sandbox.customLivenessProbe "context" $) | nindent 10 }}
{{- else if .Values.sandbox.livenessProbe.enabled }}
livenessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.sandbox.livenessProbe "enabled") "context" $) | nindent 10 }}
httpGet:
path: /health
port: sandbox
{{- end }}
{{- if .Values.sandbox.customReadinessProbe }}
readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.sandbox.customReadinessProbe "context" $) | nindent 10 }}
{{- else if .Values.sandbox.readinessProbe.enabled }}
readinessProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.sandbox.readinessProbe "enabled") "context" $) | nindent 10 }}
httpGet:
path: /health
port: sandbox
{{- end }}
{{- if .Values.sandbox.customStartupProbe }}
startupProbe: {{- include "common.tplvalues.render" (dict "value" .Values.sandbox.customStartupProbe "context" $) | nindent 10 }}
{{- else if .Values.sandbox.startupProbe.enabled }}
startupProbe: {{- include "common.tplvalues.render" (dict "value" (omit .Values.sandbox.startupProbe "enabled") "context" $) | nindent 10 }}
tcpSocket:
port: sandbox
{{- end }}
{{- if .Values.sandbox.containerSecurityContext }}
securityContext:
{{ toYaml .Values.sandbox.containerSecurityContext | indent 10 }}
{{- end }}
env:
{{- if .Values.sandbox.extraEnv }}
{{- toYaml .Values.sandbox.extraEnv | nindent 8 }}
{{- end }}
envFrom:
- configMapRef:
name: {{ template "dify.sandbox.fullname" . }}
- secretRef:
name: {{ template "dify.sandbox.fullname" . }}
ports:
- name: sandbox
containerPort: 8194
protocol: TCP
resources:
{{- toYaml .Values.sandbox.resources | nindent 12 }}
{{- if and (.Values.nodeSelector) (not .Values.sandbox.nodeSelector) }}
nodeSelector:
{{ toYaml .Values.nodeSelector | indent 8 }}
{{- end }}
{{- if .Values.sandbox.nodeSelector }}
nodeSelector:
{{ toYaml .Values.sandbox.nodeSelector | indent 8 }}
{{- end }}
{{- if and (.Values.affinity) (not .Values.sandbox.affinity) }}
affinity:
{{ toYaml .Values.affinity | indent 8 }}
{{- end }}
{{- if .Values.sandbox.affinity }}
affinity:
{{ toYaml .Values.sandbox.affinity | indent 8 }}
{{- end }}
{{- if and (.Values.tolerations) (not .Values.sandbox.tolerations) }}
tolerations:
{{ toYaml .Values.tolerations | indent 8 }}
{{- end }}
{{- if .Values.sandbox.tolerations }}
tolerations:
{{ toYaml .Values.sandbox.tolerations | indent 8 }}
{{- end }}
{{- end }}