145 lines
5.5 KiB
YAML
145 lines
5.5 KiB
YAML
#
|
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
|
# contributor license agreements. See the NOTICE file distributed with
|
|
# this work for additional information regarding copyright ownership.
|
|
# The ASF licenses this file to You under the Apache License, Version 2.0
|
|
# (the "License"); you may not use this file except in compliance with
|
|
# the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: {{ template "superset.fullname" . }}
|
|
labels:
|
|
app: {{ template "superset.name" . }}
|
|
chart: {{ template "superset.chart" . }}
|
|
release: {{ .Release.Name }}
|
|
heritage: {{ .Release.Service }}
|
|
{{- if .Values.supersetNode.deploymentAnnotations }}
|
|
annotations:
|
|
{{ toYaml .Values.supersetNode.deploymentAnnotations | nindent 4 }}
|
|
{{- end }}
|
|
spec:
|
|
replicas: {{ .Values.replicaCount }}
|
|
selector:
|
|
matchLabels:
|
|
app: {{ template "superset.name" . }}
|
|
release: {{ .Release.Name }}
|
|
template:
|
|
metadata:
|
|
annotations:
|
|
# Force reload on config changes
|
|
checksum/superset_config.py: {{ include "superset-config" . | sha256sum }}
|
|
checksum/superset_init.sh: {{ tpl .Values.init.initscript . | sha256sum }}
|
|
checksum/superset_bootstrap.sh: {{ tpl .Values.bootstrapScript . | sha256sum }}
|
|
checksum/connections: {{ .Values.supersetNode.connections | toYaml | sha256sum }}
|
|
checksum/extraConfigs: {{ .Values.extraConfigs | toYaml | sha256sum }}
|
|
checksum/extraSecrets: {{ .Values.extraSecrets | toYaml | sha256sum }}
|
|
checksum/extraSecretEnv: {{ .Values.extraSecretEnv | toYaml | sha256sum }}
|
|
checksum/configOverrides: {{ .Values.configOverrides | toYaml | sha256sum }}
|
|
checksum/configOverridesFiles: {{ .Values.configOverridesFiles | toYaml | sha256sum }}
|
|
{{- if .Values.supersetNode.forceReload }}
|
|
# Optionally force the thing to reload
|
|
force-reload: {{ randAlphaNum 5 | quote }}
|
|
{{- end }}
|
|
{{- if .Values.supersetNode.podAnnotations }}
|
|
{{ toYaml .Values.supersetNode.podAnnotations | nindent 8 }}
|
|
{{- end }}
|
|
labels:
|
|
app: {{ template "superset.name" . }}
|
|
release: {{ .Release.Name }}
|
|
spec:
|
|
{{- if or (.Values.serviceAccount.create) (.Values.serviceAccountName) }}
|
|
serviceAccountName: {{ template "superset.serviceAccountName" . }}
|
|
{{- end }}
|
|
securityContext:
|
|
runAsUser: {{ .Values.runAsUser }}
|
|
{{- if .Values.supersetNode.initContainers }}
|
|
initContainers:
|
|
{{- tpl (toYaml .Values.supersetNode.initContainers) . | nindent 6 }}
|
|
{{- end }}
|
|
{{- with .Values.hostAliases }}
|
|
hostAliases: {{ toYaml . | nindent 6 }}
|
|
{{- end }}
|
|
containers:
|
|
- name: {{ .Chart.Name }}
|
|
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
|
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
|
command: {{ tpl (toJson .Values.supersetNode.command) . }}
|
|
env:
|
|
- name: "SUPERSET_PORT"
|
|
value: {{ .Values.service.port | quote}}
|
|
{{- range $key, $value := .Values.extraEnv }}
|
|
- name: {{ $key | quote}}
|
|
value: {{ $value | quote }}
|
|
{{- end }}
|
|
{{- range $key, $value := .Values.supersetNode.env }}
|
|
- name: {{ $key | quote}}
|
|
value: {{ $value | quote }}
|
|
{{- end }}
|
|
{{- if .Values.extraEnvRaw }}
|
|
{{- toYaml .Values.extraEnvRaw | nindent 12 }}
|
|
{{- end }}
|
|
envFrom:
|
|
- secretRef:
|
|
name: {{ tpl .Values.envFromSecret . | quote }}
|
|
{{- range .Values.envFromSecrets }}
|
|
- secretRef:
|
|
name: {{ tpl . $ | quote }}
|
|
{{- end }}
|
|
volumeMounts:
|
|
- name: superset-config
|
|
mountPath: {{ .Values.configMountPath | quote }}
|
|
readOnly: true
|
|
{{- if .Values.extraConfigs }}
|
|
- name: superset-extra-config
|
|
mountPath: {{ .Values.extraConfigMountPath | quote }}
|
|
readOnly: true
|
|
{{- end }}
|
|
{{- with .Values.extraVolumeMounts }}
|
|
{{- tpl (toYaml .) $ | nindent 12 -}}
|
|
{{- end }}
|
|
ports:
|
|
- name: http
|
|
containerPort: {{ .Values.service.port }}
|
|
protocol: TCP
|
|
resources:
|
|
{{ toYaml .Values.resources | indent 12 }}
|
|
{{- with .Values.nodeSelector }}
|
|
nodeSelector:
|
|
{{ toYaml . | indent 8 }}
|
|
{{- end }}
|
|
{{- with .Values.affinity }}
|
|
affinity:
|
|
{{ toYaml . | indent 8 }}
|
|
{{- end }}
|
|
{{- with .Values.tolerations }}
|
|
tolerations:
|
|
{{ toYaml . | indent 8 }}
|
|
{{- end }}
|
|
{{- if .Values.imagePullSecrets }}
|
|
imagePullSecrets:
|
|
{{ toYaml .Values.imagePullSecrets | indent 8 }}
|
|
{{- end }}
|
|
|
|
volumes:
|
|
- name: superset-config
|
|
secret:
|
|
secretName: {{ tpl .Values.configFromSecret . }}
|
|
{{- if .Values.extraConfigs }}
|
|
- name: superset-extra-config
|
|
configMap:
|
|
name: {{ template "superset.fullname" . }}-extra-config
|
|
{{- end }}
|
|
{{- with .Values.extraVolumes }}
|
|
{{- tpl (toYaml .) $ | nindent 8 -}}
|
|
{{- end }}
|