#!/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 ==="