mirror of
https://github.com/simstudioai/sim.git
synced 2026-01-27 07:48:22 -05:00
feat(helm): add branding configmap for custom assets (#3008)
This commit is contained in:
25
helm/sim/templates/configmap-branding.yaml
Normal file
25
helm/sim/templates/configmap-branding.yaml
Normal file
@@ -0,0 +1,25 @@
|
||||
{{- if .Values.branding.enabled }}
|
||||
---
|
||||
# Branding ConfigMap
|
||||
# Mounts custom branding assets (logos, CSS, etc.) into the application
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "sim.fullname" . }}-branding
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "sim.labels" . | nindent 4 }}
|
||||
app.kubernetes.io/component: branding
|
||||
{{- if .Values.branding.files }}
|
||||
data:
|
||||
{{- range $key, $value := .Values.branding.files }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if .Values.branding.binaryFiles }}
|
||||
binaryData:
|
||||
{{- range $key, $value := .Values.branding.binaryFiles }}
|
||||
{{ $key }}: {{ $value }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@@ -110,8 +110,13 @@ spec:
|
||||
{{- end }}
|
||||
{{- include "sim.resources" .Values.app | nindent 10 }}
|
||||
{{- include "sim.securityContext" .Values.app | nindent 10 }}
|
||||
{{- if or .Values.extraVolumeMounts .Values.app.extraVolumeMounts }}
|
||||
{{- if or .Values.branding.enabled .Values.extraVolumeMounts .Values.app.extraVolumeMounts }}
|
||||
volumeMounts:
|
||||
{{- if .Values.branding.enabled }}
|
||||
- name: branding
|
||||
mountPath: {{ .Values.branding.mountPath | default "/app/public/branding" }}
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
{{- with .Values.extraVolumeMounts }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
@@ -119,8 +124,13 @@ spec:
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if or .Values.extraVolumes .Values.app.extraVolumes }}
|
||||
{{- if or .Values.branding.enabled .Values.extraVolumes .Values.app.extraVolumes }}
|
||||
volumes:
|
||||
{{- if .Values.branding.enabled }}
|
||||
- name: branding
|
||||
configMap:
|
||||
name: {{ include "sim.fullname" . }}-branding
|
||||
{{- end }}
|
||||
{{- with .Values.extraVolumes }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
|
||||
@@ -738,6 +738,32 @@ sharedStorage:
|
||||
extraVolumes: []
|
||||
extraVolumeMounts: []
|
||||
|
||||
# Branding configuration
|
||||
# Use this to inject custom branding assets (logos, CSS, etc.) into the application
|
||||
branding:
|
||||
# Enable/disable branding ConfigMap
|
||||
enabled: false
|
||||
|
||||
# Mount path in the container where branding files will be available
|
||||
mountPath: "/app/public/branding"
|
||||
|
||||
# Text files (CSS, JSON, HTML, etc.) - values are plain text
|
||||
# Example:
|
||||
# files:
|
||||
# custom.css: |
|
||||
# .logo { background-color: #ff0000; }
|
||||
# config.json: |
|
||||
# {"theme": "dark"}
|
||||
files: {}
|
||||
|
||||
# Binary files (PNG, JPG, ICO, etc.) - values must be base64 encoded
|
||||
# Generate base64 with: base64 -i logo.png | tr -d '\n'
|
||||
# Example:
|
||||
# binaryFiles:
|
||||
# logo.png: "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk..."
|
||||
# favicon.ico: "AAABAAEAEBAAAAEAIABoBAAAFgAAAA..."
|
||||
binaryFiles: {}
|
||||
|
||||
# Additional environment variables for custom integrations
|
||||
extraEnvVars: []
|
||||
|
||||
|
||||
Reference in New Issue
Block a user