OneLab Kubernetes GitOps (Argo CD)

- Helm charts: onelab app + observability (Loki/Promtail/Grafana)
- Values under gitops/values/ with public-safe placeholders
- Argo CD Application (spec.sources, 2.6+)

Made-with: Cursor
This commit is contained in:
timotheereausanofi
2026-03-20 12:27:45 +01:00
commit 68f9745c06
44 changed files with 2466 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
{{- if .Values.grafana.sidecar.dashboards.enabled }}
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ printf "%s-dashboard-onelab-logs" .Release.Name | trunc 63 | trimSuffix "-" }}
namespace: {{ .Release.Namespace }}
labels:
grafana_dashboard: "1"
annotations:
argocd.argoproj.io/sync-wave: "0"
data:
onelab-logs.json: |-
{{ .Files.Get "dashboards/onelab-logs.json" | nindent 4 }}
{{- end }}

View File

@@ -0,0 +1,36 @@
{{- if .Values.grafanaOnelabIngress.enabled }}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: grafana-onelab
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: grafana-onelab
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/component: observability
annotations:
argocd.argoproj.io/sync-wave: "0"
cert-manager.io/cluster-issuer: {{ .Values.grafanaOnelabIngress.clusterIssuer | quote }}
{{- with .Values.grafanaOnelabIngress.annotations }}
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
ingressClassName: {{ .Values.grafanaOnelabIngress.className | quote }}
{{- if .Values.grafanaOnelabIngress.tls }}
tls:
- hosts:
- {{ .Values.grafanaOnelabIngress.host | quote }}
secretName: {{ .Values.grafanaOnelabIngress.tlsSecretName | quote }}
{{- end }}
rules:
- host: {{ .Values.grafanaOnelabIngress.host | quote }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: {{ printf "%s-grafana" .Release.Name }}
port:
number: {{ .Values.grafanaOnelabIngress.servicePort }}
{{- end }}