gwoe-antragspruefer/scripts/run-monitoring-scan.sh
Dotty Dotter 2dec009b5c docs+ops: ADRs 0006/0008, DDD-Bewertung, Zugriffsrechte, Smoke-Test, Cron-Scripts
ADRs:
- 0006 Embedding-Modell-Migration v3->v4 (#123)
- 0008 DDD-Lightweight-Migration (#136)

Analysen:
- ddd-bewertung.md (1237 Zeilen) — vollstaendige DDD-Analyse mit Tages-Roadmap
- protokoll-parser-v6-machbarkeit.md (418 Zeilen) — #106 Phase 2 Vorbereitung

Reference:
- zugriffsrechte.md — 63 Routes x 3 User-Status, UI-Sichtbarkeits-Matrix

Ops:
- scripts/deploy.sh — mit Uptime-Kuma-Wartungsmodus (#149)
- scripts/run-digest.sh — taeglicher Mail-Digest-Cron
- scripts/run-monitoring-scan.sh — Monitoring-Scan-Cron (noch nicht aktiv)
- scripts/smoke-test.sh — Gesamt-Funktionspruefung
- pytest.ini: integration/slow/e2e Markers, addopts not-integration

Tests/integration/: Live-Adapter-Tests + Frontend-XRef + Citation-Substring
                    + Wahlprogramm-Indexed (4 Live-Test-Suites, marker-opt-in)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 20:55:57 +02:00

28 lines
1006 B
Bash
Executable File

#!/bin/bash
# Runs the daily monitoring scan for new Drucksachen (Issue #135).
# Scannt alle aktiven Bundesländer auf neue Drucksachen (nur Metadaten,
# kein PDF-Download, kein LLM-Call) und verschickt einen Mail-Digest.
#
# Install as host cron (nach Review durch Parent — Issue #135):
# crontab -e
# 30 6 * * * /opt/gwoe-antragspruefer/scripts/run-monitoring-scan.sh >> /var/log/gwoe-monitoring.log 2>&1
#
# Empfänger-Adresse kann als erstes Argument übergeben werden:
# run-monitoring-scan.sh mail@tobiasroedel.de
# Default: mail@tobiasroedel.de
set -euo pipefail
CONTAINER=gwoe-antragspruefer
RECIPIENT="${1:-mail@tobiasroedel.de}"
# Nur ausführen wenn Container läuft
if ! docker ps --format '{{.Names}}' | grep -q "^${CONTAINER}$"; then
echo "$(date -Iseconds) SKIP — ${CONTAINER} is not running"
exit 0
fi
echo "$(date -Iseconds) START monitoring scan (recipient: ${RECIPIENT})"
docker exec "$CONTAINER" python -m app.monitoring "$RECIPIENT"
echo "$(date -Iseconds) END"