fix(deploy): preserve Prometheus TSDB history — only recreate if config changed
All checks were successful
CI / Lint, Test & Build (push) Successful in 1m50s
CI / Deploy production (on server) (push) Successful in 20s

This commit is contained in:
Antigravity
2026-05-21 20:40:56 +00:00
parent a8f3ce0ae6
commit b02f19b1a0

View File

@@ -81,8 +81,23 @@ for i in $(seq 1 24); do
if [ "$ACTUAL" = "$GIT_COMMIT" ]; then
echo "OK build-info commit=$ACTUAL"
if docker ps --format '{{.Names}}' | grep -q "^memento-grafana$"; then
echo "=== Recreating Grafana and Prometheus to load new configurations ==="
docker compose -f monitoring/docker-compose.monitoring.yml up -d --force-recreate grafana prometheus
# Ne recréer Prometheus que si sa config a changé (préserve l'historique TSDB)
PROM_CHANGED=$(git diff --name-only HEAD~1 HEAD 2>/dev/null | grep -E '^monitoring/(prometheus\.yml|alerts\.yml)' || true)
GRAFANA_CHANGED=$(git diff --name-only HEAD~1 HEAD 2>/dev/null | grep -E '^monitoring/' || true)
if [ -n "$PROM_CHANGED" ]; then
echo "=== Prometheus config changed — recreating ==="
docker compose -f monitoring/docker-compose.monitoring.yml up -d --force-recreate prometheus
else
echo "=== Prometheus config unchanged — keeping TSDB history ==="
docker compose -f monitoring/docker-compose.monitoring.yml up -d prometheus
fi
if [ -n "$GRAFANA_CHANGED" ]; then
echo "=== Grafana config changed — recreating ==="
docker compose -f monitoring/docker-compose.monitoring.yml up -d --force-recreate grafana
else
echo "=== Grafana config unchanged — keeping state ==="
docker compose -f monitoring/docker-compose.monitoring.yml up -d grafana
fi
fi
docker compose ps
exit 0