43 lines
1.0 KiB
Bash

#!/bin/bash
set -e
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
SAGE_ROOT="$(cd "$SCRIPT_DIR/../.." 2>/dev/null && pwd || echo "$SCRIPT_DIR")"
VENV_PYTHON="$SAGE_ROOT/py3/bin/python"
VENV_PIP="$SAGE_ROOT/py3/bin/pip"
WWWROOT="$SAGE_ROOT/wwwroot"
MODULE_NAME="dashboard_for_sage"
echo "=== Building $MODULE_NAME ==="
# Install the module
cd "$SCRIPT_DIR"
$VENV_PIP install -e .
# Link wwwroot files to Sage wwwroot
MODULE_WWWROOT="$SCRIPT_DIR/wwwroot"
SAGE_MODULE_WWWROOT="$WWWROOT/$MODULE_NAME"
echo "Linking wwwroot..."
mkdir -p "$SAGE_MODULE_WWWROOT"
# Link all .ui files
for f in "$MODULE_WWWROOT"/*.ui; do
[ -f "$f" ] && ln -sf "$f" "$SAGE_MODULE_WWWROOT/"
done
# Link api/ directory
mkdir -p "$SAGE_MODULE_WWWROOT/api"
for f in "$MODULE_WWWROOT/api"/*.dspy; do
[ -f "$f" ] && ln -sf "$f" "$SAGE_MODULE_WWWROOT/api/"
done
# Link scripts/ directory
mkdir -p "$SAGE_MODULE_WWWROOT/scripts"
for f in "$MODULE_WWWROOT/scripts"/*.js; do
[ -f "$f" ] && ln -sf "$f" "$SAGE_MODULE_WWWROOT/scripts/"
done
echo "=== $MODULE_NAME build complete ==="