lilith-platform.live/scripts/run/build.sh
2026-04-18 22:02:25 -07:00

54 lines
1.6 KiB
Bash
Executable file

#!/bin/bash
# Build commands for lilith-platform.live
# Sourced by the top-level ./run script — do not execute directly.
# ROOT_DIR is set by the caller.
COMMAND="${1:-build}"
case "$COMMAND" in
build)
echo "Building lilith-platform.live..."
cd "$ROOT_DIR/deployments/@domains/atlilith.www/root" && bun run build
;;
build:api)
echo "Typechecking + building quinn.api..."
cd "$ROOT_DIR/codebase/@features/api" && bun run typecheck
;;
test:api)
echo "Running quinn.api tests..."
cd "$ROOT_DIR/codebase/@features/api" && bun run test
;;
typecheck:api)
echo "Typechecking quinn.api..."
cd "$ROOT_DIR/codebase/@features/api" && bun run typecheck
;;
lint:api)
echo "Linting quinn.api (dependency-cruiser)..."
cd "$ROOT_DIR/codebase/@features/api" && bun run lint:boundaries
;;
migrate:api)
API_DIR="$ROOT_DIR/codebase/@features/api"
DB_PATH="${DB_PATH:-$API_DIR/data/quinn-api.dev.db}"
echo "Running quinn.api migrations against $DB_PATH..."
mkdir -p "$API_DIR/data"
cd "$API_DIR" && DB_PATH="$DB_PATH" bun run migrate
;;
*)
echo "Unknown build/test/typecheck/lint/migrate command: $COMMAND"
echo ""
echo "Build commands:"
echo " ./run build Build atlilith.www frontend"
echo " ./run build:api Typecheck quinn.api"
echo " ./run test:api Run quinn.api tests"
echo " ./run typecheck:api Typecheck quinn.api (fast feedback)"
echo " ./run lint:api Lint quinn.api (dependency-cruiser)"
echo " ./run migrate:api Apply pending entity migrations"
exit 1
;;
esac