didi-website-erp-crm/erp_crm/bin/setup-site.sh

59 lines
1.7 KiB
Bash
Executable file

#!/bin/bash
# =============================================================
# ERPNext Site Setup Script
# Run this ONCE after first docker compose up
# Usage: docker exec -it didi-erpnext bash /home/frappe/setup-site.sh
# =============================================================
set -e
SITE_NAME="${SITE_NAME:-didi.localhost}"
ADMIN_PASSWORD="${ADMIN_PASSWORD:-admin}"
DB_ROOT_PASSWORD="${MYSQL_ROOT_PASSWORD:?seteaza MYSQL_ROOT_PASSWORD in .env}"
DB_HOST="mariadb"
echo "============================================"
echo " ERPNext Site Setup - DiDi"
echo "============================================"
echo ""
echo "Site: $SITE_NAME"
echo "DB Host: $DB_HOST"
echo ""
# Wait for MariaDB to be ready
echo "[1/4] Waiting for MariaDB..."
for i in $(seq 1 30); do
if mysql -h "$DB_HOST" -u root -p"$DB_ROOT_PASSWORD" -e "SELECT 1" &>/dev/null; then
echo " MariaDB is ready!"
break
fi
echo " Waiting... ($i/30)"
sleep 2
done
# Create new site
echo "[2/4] Creating site: $SITE_NAME"
bench new-site "$SITE_NAME" \
--mariadb-root-password "$DB_ROOT_PASSWORD" \
--admin-password "$ADMIN_PASSWORD" \
--db-host "$DB_HOST" \
--no-mariadb-socket
# Install ERPNext
echo "[3/4] Installing ERPNext app on site..."
bench --site "$SITE_NAME" install-app erpnext
# Set as default site
echo "[4/4] Setting as default site..."
bench use "$SITE_NAME"
echo ""
echo "============================================"
echo " Setup Complete!"
echo "============================================"
echo ""
echo " URL: http://localhost:8080"
echo " User: Administrator"
echo " Password: $ADMIN_PASSWORD"
echo ""
echo "============================================"