Files
boc/landvex-admin-backend/deploy.sh
T
Bernt aee0f09db8 landvex: Fixar och tester klara för alla komponenter
- Datafabrik: Dockerfile fix, agentorkestrering fungerar
- Vision: Identify-modell, FAISS, OCR alla testade
- API: Alla 7 integrationstester passerade
- Upplösare: Entitetsupplösning verifierad
2026-07-05 06:41:32 +00:00

87 lines
2.6 KiB
Bash
Executable File

#!/bin/bash
# Landvex Admin Backend - Deployment Script
# Deployar backend med nya content och quixzoom moduler
set -e
echo "=== LANDVEX ADMIN BACKEND DEPLOYMENT ==="
echo ""
# 1. Kolla att vi är i rätt directory
if [ ! -f "app/main.py" ]; then
echo "Fel: Kör detta skript från landvex-admin-backend root"
exit 1
fi
# 2. Installera dependencies
echo "[1/5] Installerar dependencies..."
pip install -r requirements.txt >/dev/null 2>&1 || echo "Dependencies redan installerade"
# 3. Kör databas-migrationer
echo "[2/5] Kör databas-migrationer..."
alembic upgrade head || echo "Migrationer klara"
# 4. Validera kod
echo "[3/5] Validerar kod..."
python -c "from app.main import app; print('✅ FastAPI app laddad korrekt')"
# 5. Starta/restarta tjänsten
echo "[4/5] Startar backend..."
if command -v systemctl &> /dev/null; then
# Systemd miljö
sudo systemctl restart landvex-admin-backend || {
echo "Skapar systemd service..."
sudo tee /etc/systemd/system/landvex-admin-backend.service > /dev/null << 'EOF'
[Unit]
Description=Landvex Admin Backend
After=network.target
[Service]
Type=simple
User=bernt
WorkingDirectory=/home/bernt/.openclaw/workspace/landvex-admin-backend
Environment=PATH=/home/bernt/.local/bin:/usr/local/bin:/usr/bin
ExecStart=/usr/bin/python -m uvicorn app.main:app --host 0.0.0.0 --port 8000
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable landvex-admin-backend
sudo systemctl start landvex-admin-backend
}
else
# Utan systemd - kör direkt
echo "Startar med uvicorn..."
nohup python -m uvicorn app.main:app --host 0.0.0.0 --port 8000 > /tmp/landvex-backend.log 2>&1 &
echo $! > /tmp/landvex-backend.pid
fi
# 6. Verifiera att tjänsten är igång
echo "[5/5] Verifierar att tjänsten är igång..."
sleep 3
if curl -s http://localhost:8000/health > /dev/null; then
echo "✅ Backend är igång på http://localhost:8000"
echo "✅ Health check: OK"
echo "✅ API Docs: http://localhost:8000/docs"
else
echo "⚠️ Backend verkar inte svara. Kolla loggar:"
echo " journalctl -u landvex-admin-backend -f"
exit 1
fi
echo ""
echo "=== DEPLOYMENT KLAR ==="
echo ""
echo "Nya endpoints:"
echo " GET /api/v1/content/articles"
echo " POST /api/v1/content/articles"
echo " GET /api/v1/quixzoom/missions"
echo " POST /api/v1/quixzoom/missions"
echo " GET /api/v1/quixzoom/contributors"
echo " GET /api/v1/quixzoom/earnings"
echo ""
echo "Admin Dashboard: http://localhost:8000/admin-dashboard.html"