Files
sugar-crm/start.sh
root 802bd9e1b9
Some checks failed
Docker Build & Push SugarCRM 6.5 CE / build-and-push (push) Has been cancelled
feat: API test scripts + quickstart
- start.sh: All-in-One Launcher (compose up + wait + API test)
- test_api_extended.py: Full CRUD, search, relationships
- test_seed.py: Mass data generator (accounts/contacts/leads)
- Updated README with test script documentation
2026-05-24 14:39:01 +02:00

75 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
# SugarCRM 6.5.26 CE — Quickstart Script
# =======================================
# Was es tut:
# 1. Prüft Docker + Compose
# 2. Startet SugarCRM + MySQL
# 3. Wartet bis alles ready ist
# 4. Öffnet Web-UI URL
# 5. Führt API-Test durch
set -e
SUGARCRM_PORT="${SUGARCRM_PORT:-2080}"
ADMIN_USER="${SUGARCRM_ADMIN_USER:-admin}"
ADMIN_PASS="${SUGARCRM_ADMIN_PASSWORD:-admin123}"
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
echo "🍬 SugarCRM 6.5.26 CE — Quickstart"
echo "=================================="
echo ""
# Check Docker
if ! command -v docker &>/dev/null; then
echo "❌ Docker ist nicht installiert!"
exit 1
fi
# Check docker compose (v2 syntax)
COMPOSE_CMD=""
if docker compose version &>/dev/null 2>&1; then
COMPOSE_CMD="docker compose"
elif command -v docker-compose &>/dev/null 2>&1; then
COMPOSE_CMD="docker-compose"
else
echo "❌ Docker Compose nicht gefunden!"
exit 1
fi
echo "📦 Starte SugarCRM..."
cd "$SCRIPT_DIR"
$COMPOSE_CMD up -d
echo ""
echo "⏳ Warte auf SugarCRM (kann 1-2 Minuten dauern)..."
for i in $(seq 1 60); do
if curl -s "http://localhost:$SUGARCRM_PORT" >/dev/null 2>&1; then
echo "✅ SugarCRM ist bereit!"
break
fi
sleep 2
done
echo ""
echo "=================================="
echo "🌐 Web-UI: http://localhost:$SUGARCRM_PORT"
echo "👤 Login: $ADMIN_USER / $ADMIN_PASS"
echo "🔌 API: http://localhost:$SUGARCRM_PORT/service/v4_1/rest.php"
echo "=================================="
echo ""
# Run API test
echo "🧪 Führe API-Test durch..."
echo ""
python3 "$SCRIPT_DIR/test_api.py"
echo ""
echo "✅ SugarCRM ist vollständig eingerichtet und getestet!"
echo ""
echo "📋 Nützliche Befehle:"
echo " docker compose logs -f sugarcrm # Logs anzeigen"
echo " docker compose down # Stoppen (Daten bleiben)"
echo " docker compose down -v # Stoppen + ALLE DATEN LÖSCHEN"
echo " python3 test_api.py # API-Test erneut ausführen"