diff --git a/helm/superset/templates/configmap-superset.yaml b/helm/superset/templates/configmap-superset.yaml new file mode 100644 index 0000000000000..104bc353b1be6 --- /dev/null +++ b/helm/superset/templates/configmap-superset.yaml @@ -0,0 +1,32 @@ +# +# 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. +# +{{- if .Values.extraConfigs }} +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ template "superset.fullname" . }}-extra-config + labels: + app: {{ template "superset.name" . }} + chart: {{ template "superset.chart" . }} + release: {{ .Release.Name }} + heritage: {{ .Release.Service }} +data: +{{- range $path, $config := .Values.extraConfigs }} + {{ $path }}: | +{{ tpl $config . | indent 4 -}} +{{- end -}} +{{- end -}} \ No newline at end of file diff --git a/helm/superset/templates/init-job.yaml b/helm/superset/templates/init-job.yaml index 58ab564ac2ada..252c9161f92a7 100644 --- a/helm/superset/templates/init-job.yaml +++ b/helm/superset/templates/init-job.yaml @@ -48,10 +48,20 @@ spec: - name: superset-config mountPath: {{ .Values.configMountPath | quote }} readOnly: true + {{ if .Values.extraConfigs }} + - name: superset-extra-config + mountPath: {{ .Values.extraConfigMountPath | quote }} + readOnly: true + {{- end }} command: {{ tpl (toJson .Values.init.command) . }} volumes: - name: superset-config secret: secretName: {{ tpl .Values.configFromSecret . }} + {{- if .Values.extraConfigs }} + - name: superset-extra-config + configMap: + name: {{ template "superset.fullname" . }}-extra-config + {{- end }} restartPolicy: Never {{- end }} diff --git a/helm/superset/values.yaml b/helm/superset/values.yaml index b1a12766ef731..18c279c631f06 100644 --- a/helm/superset/values.yaml +++ b/helm/superset/values.yaml @@ -41,8 +41,23 @@ envFromSecret: '{{ template "superset.fullname" . }}-env' ## extraEnv: {} +extraConfigs: {} + # datasources-init.yaml: | + # databases: + # - allow_csv_upload: true + # allow_ctas: true + # allow_cvas: true + # database_name: example-db + # extra: "{\r\n \"metadata_params\": {},\r\n \"engine_params\": {},\r\n \"\ + # metadata_cache_timeout\": {},\r\n \"schemas_allowed_for_csv_upload\": []\r\n\ + # }" + # sqlalchemy_uri: example://example-db.local + # tables: [] + configMountPath: "/app/pythonpath" +extraConfigMountPath: "/app/configs" + image: repository: preset/superset tag: latest @@ -238,4 +253,4 @@ nodeSelector: {} tolerations: [] -affinity: {} +affinity: {} \ No newline at end of file