mirror of
https://github.com/s-frick/effigenix.git
synced 2026-03-28 10:19:35 +01:00
chore(types): OpenAPI-Spec update
This commit is contained in:
parent
d27dbaa843
commit
d20fb4108a
11 changed files with 2468 additions and 45 deletions
52
scripts/generate-openapi.sh
Executable file
52
scripts/generate-openapi.sh
Executable file
|
|
@ -0,0 +1,52 @@
|
|||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
BACKEND_DIR="$(cd "$(dirname "$0")/../backend" && pwd)"
|
||||
FRONTEND_DIR="$(cd "$(dirname "$0")/../frontend" && pwd)"
|
||||
API_DOCS_URL="http://localhost:8080/api-docs"
|
||||
TIMEOUT=60
|
||||
BACKEND_PID=""
|
||||
|
||||
cleanup() {
|
||||
if [[ -n "$BACKEND_PID" ]]; then
|
||||
echo "→ Backend wird gestoppt (PID $BACKEND_PID)..."
|
||||
kill "$BACKEND_PID" 2>/dev/null || true
|
||||
fi
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
wait_for_backend() {
|
||||
echo "→ Warte auf Backend ($TIMEOUT s)..."
|
||||
local elapsed=0
|
||||
until curl -sf "$API_DOCS_URL" -o /dev/null; do
|
||||
if (( elapsed >= TIMEOUT )); then
|
||||
echo "✗ Backend nicht erreichbar nach ${TIMEOUT}s" >&2
|
||||
exit 1
|
||||
fi
|
||||
sleep 2
|
||||
(( elapsed += 2 ))
|
||||
done
|
||||
echo "✓ Backend bereit"
|
||||
}
|
||||
|
||||
# Backend starten falls nicht erreichbar
|
||||
if curl -sf "$API_DOCS_URL" -o /dev/null 2>/dev/null; then
|
||||
echo "✓ Backend läuft bereits"
|
||||
else
|
||||
echo "→ Backend wird gestartet..."
|
||||
mvn -f "$BACKEND_DIR/pom.xml" spring-boot:run -q &
|
||||
BACKEND_PID=$!
|
||||
wait_for_backend
|
||||
fi
|
||||
|
||||
echo "→ OpenAPI-Spec wird generiert..."
|
||||
curl -sf "$API_DOCS_URL" -o "$FRONTEND_DIR/openapi.json"
|
||||
echo "✓ openapi.json aktualisiert"
|
||||
|
||||
echo "→ TypeScript-Typen werden generiert..."
|
||||
pnpm --filter @effigenix/types --prefix "$FRONTEND_DIR" generate:types
|
||||
echo "✓ src/generated/api.ts aktualisiert"
|
||||
|
||||
echo ""
|
||||
echo "Fertig. Bitte committen:"
|
||||
echo " git add frontend/openapi.json frontend/packages/types/src/generated/api.ts"
|
||||
Loading…
Add table
Add a link
Reference in a new issue