summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-01-07 23:26:43 +0200
committerPaul Buetow <paul@buetow.org>2026-01-07 23:26:43 +0200
commit0672f43e1cef527e3c95ca8114de53db3e93c761 (patch)
tree4eae65d245897974e04ab3712efc05fef96ce787
parenta344e7e4b961f1b1c5600728ae678cfd6e1d5c04 (diff)
Migrate Grafana-Ingress to ArgoCD GitOps
- Created ArgoCD Application for grafana-ingress - Simple custom Helm chart exposing Grafana via Traefik - Updated Justfile with ArgoCD commands - Status: Synced and Healthy - Ingress working at https://grafana.f3s.buetow.org 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
-rw-r--r--f3s/argocd-apps/grafana-ingress.yaml28
-rw-r--r--f3s/prometheus/grafana-ingress/Justfile26
2 files changed, 46 insertions, 8 deletions
diff --git a/f3s/argocd-apps/grafana-ingress.yaml b/f3s/argocd-apps/grafana-ingress.yaml
new file mode 100644
index 0000000..bc99f02
--- /dev/null
+++ b/f3s/argocd-apps/grafana-ingress.yaml
@@ -0,0 +1,28 @@
+apiVersion: argoproj.io/v1alpha1
+kind: Application
+metadata:
+ name: grafana-ingress
+ namespace: cicd
+ finalizers:
+ - resources-finalizer.argocd.argoproj.io
+spec:
+ project: default
+ source:
+ repoURL: https://codeberg.org/snonux/conf.git
+ targetRevision: master
+ path: f3s/prometheus/grafana-ingress
+ destination:
+ server: https://kubernetes.default.svc
+ namespace: monitoring
+ syncPolicy:
+ automated:
+ prune: true
+ selfHeal: true
+ syncOptions:
+ - CreateNamespace=false
+ retry:
+ limit: 3
+ backoff:
+ duration: 5s
+ factor: 2
+ maxDuration: 1m
diff --git a/f3s/prometheus/grafana-ingress/Justfile b/f3s/prometheus/grafana-ingress/Justfile
index fd63af0..f807bf9 100644
--- a/f3s/prometheus/grafana-ingress/Justfile
+++ b/f3s/prometheus/grafana-ingress/Justfile
@@ -1,12 +1,22 @@
NAMESPACE := "monitoring"
-RELEASE_NAME := "grafana-ingress"
-CHART_PATH := "."
+APP_NAME := "grafana-ingress"
-install:
- helm install {{RELEASE_NAME}} {{CHART_PATH}} --namespace {{NAMESPACE}} --create-namespace
+status:
+ @echo "=== Ingress ==="
+ @kubectl get ingress -n {{NAMESPACE}} grafana-ingress
+ @echo ""
+ @echo "=== ArgoCD Status ==="
+ @kubectl get application {{APP_NAME}} -n cicd -o jsonpath='Sync: {.status.sync.status}, Health: {.status.health.status}' 2>/dev/null && echo ""
-upgrade:
- helm upgrade {{RELEASE_NAME}} {{CHART_PATH}} --namespace {{NAMESPACE}}
+sync:
+ @echo "Triggering ArgoCD sync..."
+ @kubectl annotate application {{APP_NAME}} -n cicd argocd.argoproj.io/refresh=normal --overwrite
+ @sleep 2
+ @kubectl get application {{APP_NAME}} -n cicd -o jsonpath='Sync: {.status.sync.status}, Health: {.status.health.status}' && echo ""
-delete:
- helm uninstall {{RELEASE_NAME}} --namespace {{NAMESPACE}}
+argocd-status:
+ argocd app get {{APP_NAME}} --core
+
+test:
+ @echo "Testing Grafana ingress..."
+ curl -I https://grafana.f3s.buetow.org