4e43d15153
Fixes Kubernetes label validation error when deploying dashboard ConfigMap. Problem: - Kubernetes labels cannot contain spaces (validation regex: [A-Za-z0-9][-A-Za-z0-9_.]*[A-Za-z0-9]) - Previous implementation had grafana_folder: "Nextcloud MCP" as a label - Deployment failed with: "Invalid value: 'Nextcloud MCP'" Solution: - Move grafana_folder from labels to annotations (annotations allow spaces) - Keep grafana_dashboard="1" as label for ConfigMap discovery - Grafana sidecar reads folder name from folderAnnotation parameter Changes: - dashboard-configmap.yaml: Move grafana_folder to annotations section - dashboards/README.md: Fix kubectl commands to use annotations - values.yaml: Update comments to clarify annotation usage This follows the standard kube-prometheus-stack pattern where: - Labels are used for ConfigMap discovery (strict validation) - Annotations are used for metadata like folder names (relaxed validation) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
26 lines
833 B
YAML
26 lines
833 B
YAML
{{- if .Values.dashboards.enabled }}
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: {{ include "nextcloud-mcp-server.fullname" . }}-dashboard
|
|
namespace: {{ .Release.Namespace }}
|
|
labels:
|
|
{{- include "nextcloud-mcp-server.labels" . | nindent 4 }}
|
|
{{- with .Values.dashboards.labels }}
|
|
{{- toYaml . | nindent 4 }}
|
|
{{- end }}
|
|
# Grafana sidecar discovery label
|
|
grafana_dashboard: "1"
|
|
annotations:
|
|
{{- with .Values.dashboards.annotations }}
|
|
{{- toYaml . | nindent 4 }}
|
|
{{- end }}
|
|
# Grafana folder name (annotations support spaces, unlike labels)
|
|
{{- if .Values.dashboards.grafanaFolder }}
|
|
grafana_folder: {{ .Values.dashboards.grafanaFolder | quote }}
|
|
{{- end }}
|
|
data:
|
|
nextcloud-mcp-server.json: |-
|
|
{{ .Files.Get "dashboards/nextcloud-mcp-server.json" | indent 4 }}
|
|
{{- end }}
|