This repository has been archived on 2026-02-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
breakpilot-pwa/admin-v2/deploy-and-ingest.sh
BreakPilot Dev 557305db5d
Some checks failed
ci/woodpecker/push/integration Pipeline failed
ci/woodpecker/push/main Pipeline failed
CI/CD Pipeline / Go Tests (push) Has been cancelled
CI/CD Pipeline / Python Tests (push) Has been cancelled
CI/CD Pipeline / Website Tests (push) Has been cancelled
CI/CD Pipeline / Linting (push) Has been cancelled
CI/CD Pipeline / Security Scan (push) Has been cancelled
CI/CD Pipeline / Docker Build & Push (push) Has been cancelled
CI/CD Pipeline / Integration Tests (push) Has been cancelled
CI/CD Pipeline / Deploy to Staging (push) Has been cancelled
CI/CD Pipeline / Deploy to Production (push) Has been cancelled
CI/CD Pipeline / CI Summary (push) Has been cancelled
Security Scanning / Secret Scanning (push) Has been cancelled
Security Scanning / Dependency Vulnerability Scan (push) Has been cancelled
Security Scanning / Go Security Scan (push) Has been cancelled
Security Scanning / Python Security Scan (push) Has been cancelled
Security Scanning / Node.js Security Scan (push) Has been cancelled
Security Scanning / Docker Image Security (push) Has been cancelled
Security Scanning / Security Summary (push) Has been cancelled
Tests / Go Tests (push) Has been cancelled
Tests / Python Tests (push) Has been cancelled
Tests / Integration Tests (push) Has been cancelled
Tests / Go Lint (push) Has been cancelled
Tests / Python Lint (push) Has been cancelled
Tests / Security Scan (push) Has been cancelled
Tests / All Checks Passed (push) Has been cancelled
feat: Add Academy, Whistleblower, Incidents SDK modules, pitch-deck, blog and CI/CD config
- Academy, Whistleblower, Incidents frontend pages with API proxies and types
- Vendor compliance API proxy route
- Go backend handlers and models for all new SDK modules
- Investor pitch-deck app with interactive slides
- Blog section with DSGVO, AI Act, NIS2, glossary articles
- MkDocs documentation site
- CI/CD pipelines (Woodpecker, GitHub Actions), security scanning config
- Planning and implementation documentation

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 21:12:16 +01:00

126 lines
4.1 KiB
Bash
Executable File

#!/bin/bash
# ============================================================
# RAG DACH Vollabdeckung — Deploy & Ingest Script
# Laeuft auf dem Mac Mini im Hintergrund (nohup)
# ============================================================
set -e
LOG_FILE="/Users/benjaminadmin/Projekte/breakpilot-pwa/ingest-$(date +%Y%m%d-%H%M%S).log"
PROJ="/Users/benjaminadmin/Projekte/breakpilot-pwa"
DOCKER="/usr/local/bin/docker"
COMPOSE="$DOCKER compose -f $PROJ/docker-compose.yml"
exec > >(tee -a "$LOG_FILE") 2>&1
echo "============================================================"
echo "RAG DACH Deploy & Ingest — Start: $(date)"
echo "Logfile: $LOG_FILE"
echo "============================================================"
# Phase 1: Check prerequisites
echo ""
echo "[1/6] Pruefe Docker-Services..."
$COMPOSE ps qdrant embedding-service klausur-service 2>/dev/null || true
# Phase 2: Restart klausur-service to pick up new code
echo ""
echo "[2/6] Rebuilding klausur-service..."
cd "$PROJ"
$COMPOSE build --no-cache klausur-service
echo "Build fertig."
echo ""
echo "[3/6] Restarting klausur-service..."
$COMPOSE up -d klausur-service
echo "Warte 15 Sekunden auf Service-Start..."
sleep 15
# Check if klausur-service is healthy
echo "Pruefe klausur-service Health..."
for i in 1 2 3 4 5; do
if curl -sf http://127.0.0.1:8086/health > /dev/null 2>&1; then
echo "klausur-service ist bereit."
break
fi
echo "Warte auf klausur-service... ($i/5)"
sleep 10
done
# Phase 3: Run ingestion for new DACH laws only (not all — that would re-ingest existing ones)
echo ""
echo "[4/6] Starte Ingestion der neuen DACH-Gesetze (P1 zuerst)..."
# P1 — Deutschland
echo ""
echo "--- Deutschland P1 ---"
$COMPOSE exec -T klausur-service python -m legal_corpus_ingestion --ingest \
DE_DDG DE_BGB_AGB DE_EGBGB DE_UWG DE_HGB_RET DE_AO_RET DE_TKG 2>&1 || echo "DE P1 hatte Fehler (non-fatal)"
# P1 — Oesterreich
echo ""
echo "--- Oesterreich P1 ---"
$COMPOSE exec -T klausur-service python -m legal_corpus_ingestion --ingest \
AT_ECG AT_TKG AT_KSCHG AT_FAGG AT_UGB_RET AT_BAO_RET AT_MEDIENG 2>&1 || echo "AT P1 hatte Fehler (non-fatal)"
# P1 — Schweiz
echo ""
echo "--- Schweiz P1 ---"
$COMPOSE exec -T klausur-service python -m legal_corpus_ingestion --ingest \
CH_DSV CH_OR_AGB CH_UWG CH_FMG 2>&1 || echo "CH P1 hatte Fehler (non-fatal)"
# 3 fehlgeschlagene Quellen nachholen
echo ""
echo "--- 3 fehlgeschlagene Quellen ---"
$COMPOSE exec -T klausur-service python -m legal_corpus_ingestion --ingest \
LU_DPA_LAW DK_DATABESKYTTELSESLOVEN EDPB_GUIDELINES_1_2022 2>&1 || echo "Fix-3 hatte Fehler (non-fatal)"
echo ""
echo "[5/6] Starte Ingestion P2 + P3..."
# P2 — Deutschland
echo ""
echo "--- Deutschland P2 ---"
$COMPOSE exec -T klausur-service python -m legal_corpus_ingestion --ingest \
DE_PANGV DE_DLINFOV DE_BETRVG 2>&1 || echo "DE P2 hatte Fehler (non-fatal)"
# P2 — Oesterreich
echo ""
echo "--- Oesterreich P2 ---"
$COMPOSE exec -T klausur-service python -m legal_corpus_ingestion --ingest \
AT_ABGB_AGB AT_UWG 2>&1 || echo "AT P2 hatte Fehler (non-fatal)"
# P2 — Schweiz
echo ""
echo "--- Schweiz P2 ---"
$COMPOSE exec -T klausur-service python -m legal_corpus_ingestion --ingest \
CH_GEBUV CH_ZERTES 2>&1 || echo "CH P2 hatte Fehler (non-fatal)"
# P3
echo ""
echo "--- P3 (DE + CH) ---"
$COMPOSE exec -T klausur-service python -m legal_corpus_ingestion --ingest \
DE_GESCHGEHG DE_BSIG DE_USTG_RET CH_ZGB_PERS 2>&1 || echo "P3 hatte Fehler (non-fatal)"
# Phase 4: Rebuild admin-v2 frontend
echo ""
echo "[6/6] Rebuilding admin-v2 Frontend..."
$COMPOSE build --no-cache admin-v2
$COMPOSE up -d admin-v2
echo "admin-v2 neu gestartet."
# Phase 5: Status check
echo ""
echo "============================================================"
echo "FINAL STATUS CHECK"
echo "============================================================"
echo ""
$COMPOSE exec -T klausur-service python -m legal_corpus_ingestion --status 2>&1 || echo "Status-Check fehlgeschlagen"
echo ""
echo "============================================================"
echo "Fertig: $(date)"
echo "Logfile: $LOG_FILE"
echo "============================================================"