2026-03-05 00:04:26 -06:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
set -euo pipefail
|
2026-06-12 09:14:49 -05:00
|
|
|
SCRIPT_DIR="$(cd -- "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
|
|
|
ROOT="$(cd -- "$SCRIPT_DIR/.." && pwd)"
|
2026-03-05 00:04:26 -06:00
|
|
|
SERVER_DIR="$ROOT/Overlord-Server"
|
|
|
|
|
BUN_BIN="${BUN_BIN:-bun}"
|
|
|
|
|
|
|
|
|
|
cd "$SERVER_DIR"
|
|
|
|
|
if ! command -v "$BUN_BIN" >/dev/null 2>&1; then
|
|
|
|
|
echo "[server] bun not found. Set BUN_BIN to your bun binary or install bun for this environment." >&2
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
echo "[server] using bun at: $(command -v $BUN_BIN)"
|
|
|
|
|
|
|
|
|
|
echo "[build] bun install..."
|
|
|
|
|
"$BUN_BIN" install
|
|
|
|
|
|
|
|
|
|
echo "[build] building Tailwind CSS..."
|
|
|
|
|
"$BUN_BIN" run build:css
|
|
|
|
|
|
|
|
|
|
echo "[build] building server bundle..."
|
|
|
|
|
"$BUN_BIN" run build
|
|
|
|
|
|
|
|
|
|
echo "[build] compiling Linux production executable..."
|
|
|
|
|
"$BUN_BIN" run build:prod:linux
|
|
|
|
|
|
|
|
|
|
echo "[build] copying Overlord-Client source for runtime builds..."
|
|
|
|
|
mkdir -p "$SERVER_DIR/dist/Overlord-Client"
|
|
|
|
|
rsync -a --exclude='build' --exclude='.git' --exclude='.vscode' "$ROOT/Overlord-Client/" "$SERVER_DIR/dist/Overlord-Client/" 2>/dev/null \
|
2026-03-06 13:31:34 -06:00
|
|
|
|| {
|
|
|
|
|
rm -rf "$SERVER_DIR/dist/Overlord-Client"
|
|
|
|
|
cp -a "$ROOT/Overlord-Client" "$SERVER_DIR/dist/Overlord-Client"
|
|
|
|
|
rm -rf "$SERVER_DIR/dist/Overlord-Client/build" "$SERVER_DIR/dist/Overlord-Client/.git" "$SERVER_DIR/dist/Overlord-Client/.vscode"
|
|
|
|
|
}
|
2026-03-05 00:04:26 -06:00
|
|
|
|
|
|
|
|
echo "[server] starting compiled executable..."
|
|
|
|
|
PORT="${PORT:-5173}" \
|
|
|
|
|
HOST="${HOST:-0.0.0.0}" \
|
|
|
|
|
OVERLORD_USER="${OVERLORD_USER:-admin}" \
|
|
|
|
|
OVERLORD_PASS="${OVERLORD_PASS:-admin}" \
|
|
|
|
|
LOG_LEVEL="${LOG_LEVEL:-info}" \
|
|
|
|
|
NODE_ENV="${NODE_ENV:-production}" \
|
|
|
|
|
OVERLORD_ROOT="$SERVER_DIR" \
|
|
|
|
|
"$SERVER_DIR/dist/overlord-server-linux-x64"
|