--- title: "[bojemoi] feat(grafana-watcher): add nightly auto-dashboard generation service" date: 2026-06-30T14:54:40+02:00 draft: false tags: ["commit", "bojemoi", "main"] categories: ["Git Activity"] summary: "Commit 2973a95 par Betty dans bojemoi" author: "Betty" --- ## Commit `2973a95` | | | |---|---| | **Repository** | bojemoi | | **Branch** | `main` | | **Author** | Betty | | **Hash** | `2973a95b235b87ef2f2e97207922e98a42b5be83` | ### Description - New service scans Swarm services with grafana.dashboard=true label - Generates dashboards via Jinja2 (scanner/pipeline/datasource/infra types) - Pushes to Grafana API and writes JSON to volumes/grafana/dashboards/ - Commits and pushes changes to Gitea (git sync with safe.directory fix) - Scheduled daily at 23:00 via APScheduler - Added grafana.* labels on ak47, bm12, uzi, nuclei services in borodino stack Co-Authored-By: Claude Sonnet 4.6 ### Files Changed ``` A grafana-watcher/Dockerfile A grafana-watcher/generator.py A grafana-watcher/git_sync.py A grafana-watcher/grafana_api.py A grafana-watcher/main.py A grafana-watcher/requirements.txt A grafana-watcher/scanner.py A grafana-watcher/templates/datasource.json.j2 A grafana-watcher/templates/infra.json.j2 A grafana-watcher/templates/pipeline.json.j2 A grafana-watcher/templates/scanner.json.j2 M stack/40-service-borodino.yml A stack/73-service-grafana-watcher.yml ``` ### Diff Summary ``` grafana-watcher/Dockerfile | 12 ++++ grafana-watcher/generator.py | 42 +++++++++++ grafana-watcher/git_sync.py | 37 ++++++++++ grafana-watcher/grafana_api.py | 59 ++++++++++++++++ grafana-watcher/main.py | 95 +++++++++++++++++++++++++ grafana-watcher/requirements.txt | 4 ++ grafana-watcher/scanner.py | 35 +++++++++ grafana-watcher/templates/datasource.json.j2 | 49 +++++++++++++ grafana-watcher/templates/infra.json.j2 | 60 ++++++++++++++++ grafana-watcher/templates/pipeline.json.j2 | 102 +++++++++++++++++++++++++++ grafana-watcher/templates/scanner.json.j2 | 90 +++++++++++++++++++++++ stack/40-service-borodino.yml | 24 +++++++ stack/73-service-grafana-watcher.yml | 46 ++++++++++++ 13 files changed, 655 insertions(+) ```