Analyse: geo-update holt Neustart nach (Marker), Runner-Test für build-Injektion

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
ClaudeandClaude Sonnet 5.5 committed 2026-10-01 11:04:50 +00:00
1 parent 714687fe3b
commit 466fcffa21
3 files changed
+85 -3

No files matched your search

+15 -3
View File
@@ -8,6 +8,7 @@ DIR="${ANALYTICS_DATA_DIR:-/srv/webklar-analytics}"
CONTAINER="${ANALYTICS_CONTAINER:-webklar-analytics}"
NEU="$DIR/geo.csv.new"
ZIEL="$DIR/geo.csv"
MARKER="$DIR/geo.restart-pending"
fehler() { echo "Fehler (geo-update): $*" >&2; rm -f "$NEU" "$NEU.gz"; exit 1; }
@@ -36,13 +37,24 @@ zeilen="$(wc -l < "$NEU" | tr -d ' ')"
[ "$zeilen" -gt 100000 ] || fehler "Neue Datei hat nur $zeilen Zeilen (erwartet > 100000). Bestehende geo.csv bleibt unverändert."
grep -Eq ',"?DE"?\r?$' "$NEU" || fehler "Neue Datei enthält kein 'DE'. Bestehende geo.csv bleibt unverändert."
neustart() {
docker restart "$CONTAINER" >/dev/null || fehler "Neustart von $CONTAINER fehlgeschlagen (geo.csv ist aber aktualisiert, nächster Lauf versucht den Neustart erneut)."
rm -f "$MARKER"
echo "$CONTAINER neu gestartet."
}
if [ -f "$ZIEL" ] && cmp -s "$NEU" "$ZIEL"; then
rm -f "$NEU"
echo "geo.csv ($geladen) unverändert, kein Neustart nötig."
if [ -f "$MARKER" ]; then
echo "geo.csv ($geladen) unverändert, aber ein früherer Neustart steht aus."
neustart
else
echo "geo.csv ($geladen) unverändert, kein Neustart nötig."
fi
exit 0
fi
mv -f "$NEU" "$ZIEL"
: > "$MARKER" # bleibt liegen, bis der Neustart gelungen ist
echo "geo.csv aktualisiert ($geladen, $zeilen Zeilen)."
docker restart "$CONTAINER" >/dev/null || fehler "Neustart von $CONTAINER fehlgeschlagen (geo.csv ist aber aktualisiert)."
echo "$CONTAINER neu gestartet."
neustart