TrueChartsClone/charts/incubator/inventree/templates/_configmap.tpl

107 lines
3.6 KiB
Smarty

{{/* Define the secrets */}}
{{- define "inventree.config" -}}
{{- $configName := printf "%s-inventree-config" (include "tc.common.names.fullname" .) }}
{{- $nginxConfigName := printf "%s-inventree-config-nginx" (include "tc.common.names.fullname" .) }}
---
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ $configName }}
labels:
{{- include "tc.common.labels" . | nindent 4 }}
data:
INVENTREE_TIMEZONE: {{ .Values.TZ }}
INVENTREE_DB_ENGINE: "postgresql"
INVENTREE_DB_NAME: {{ .Values.postgresql.postgresqlDatabase }}
INVENTREE_DB_USER: {{ .Values.postgresql.postgresqlUsername }}
INVENTREE_DB_HOST: {{ printf "%v-%v" .Release.Name "postgresql" }}
INVENTREE_DB_PORT: "5432"
INVENTREE_CACHE_PORT: "6379"
INVENTREE_WEB_PORT: "8000"
{{- with .Values.inventree.mail.backend }}
INVENTREE_EMAIL_BACKEND: {{ . }}
{{- end }}
{{- with .Values.inventree.mail.host }}
INVENTREE_EMAIL_HOST: {{ . }}
{{- end }}
{{- with .Values.inventree.mail.port }}
INVENTREE_EMAIL_PORT: {{ . | quote }}
{{- end }}
{{- with .Values.inventree.mail.username }}
INVENTREE_EMAIL_USERNAME: {{ . }}
{{- end }}
INVENTREE_EMAIL_TLS: '{{ ternary "True" "False" .Values.inventree.mail.tls | default "False" }}'
INVENTREE_EMAIL_SSL: '{{ ternary "True" "False" .Values.inventree.mail.ssl | default "False" }}'
{{- with .Values.inventree.mail.sender }}
INVENTREE_EMAIL_SENDER: {{ . }}
{{- end }}
{{- if .Values.inventree.general.debug }}
INVENTREE_DEBUG: {{ .Values.inventree.general.debug | quote }}
{{- end }}
{{- with .Values.inventree.general.log_level }}
INVENTREE_LOG_LEVEL: {{ . }}
{{- end }}
{{- if .Values.inventree.general.plugins_enabled }}
INVENTREE_PLUGINS_ENABLED: {{ .Values.inventree.general.plugins_enabled | quote }}
{{- end }}
{{- with .Values.inventree.general.login_confirm_days }}
INVENTREE_LOGIN_CONFIRM_DAYS: {{ . | quote }}
{{- end }}
{{- with .Values.inventree.general.login_attempts }}
INVENTREE_LOGIN_ATTEMPTS: {{ . | quote }}
{{- end }}
---
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ $nginxConfigName }}
labels:
{{- include "tc.common.labels" . | nindent 4 }}
data:
nginx.conf: |-
server {
listen {{ .Values.service.main.ports.main.port }};
real_ip_header proxy_protocol;
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-By $server_addr:$server_port;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header CLIENT_IP $remote_addr;
proxy_pass_request_headers on;
proxy_redirect off;
client_max_body_size 100M;
proxy_buffering off;
proxy_request_buffering off;
proxy_pass http://localhost:8000;
}
# Redirect any requests for static files
location /static/ {
alias /var/www/static/;
autoindex on;
# Caching settings
expires 30d;
add_header Pragma public;
add_header Cache-Control "public";
}
# Redirect any requests for media files
location /media/ {
alias /var/www/media/;
# Media files require user authentication
auth_request /auth;
}
# Use the 'user' API endpoint for auth
location /auth {
internal;
proxy_pass http://localhost:8000/auth/;
proxy_pass_request_body off;
proxy_set_header Content-Length "";
proxy_set_header X-Original-URI $request_uri;
}
}
{{- end -}}