CloneVendorRepos.sh and CleanVendor.sh resolved vendor/ relative to scripts/ instead of the repo root, so vendor repos were cloned to the wrong location (scripts/vendor) and docker-compose builds (which expect ./vendor at repo root) would fail. BuildAll.sh and StatusCheck.sh had the same issue, cd-ing to scripts/ instead of the repo root before running docker compose. Also updated validate-all.sh with the 10 newer MCP servers that were added after the script was last maintained (firefly-iii, actual, paperless, beszel, gitea, grafana, ha, limesurvey, linkwarden, superset) plus added missing env vars for audiobook-mcp and drawio-mcp.
45 lines
1.1 KiB
Bash
Executable File
45 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# BuildAll.sh
|
|
# Script to build all MCP/LSP services in KNEL-AIMiddleware
|
|
|
|
set -e # Exit on error
|
|
|
|
# Colors for output
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
NC='\033[0m' # No Color
|
|
|
|
echo -e "${GREEN}=== KNEL-AIMiddleware Build Script ===${NC}"
|
|
echo ""
|
|
echo "Building all services..."
|
|
echo ""
|
|
|
|
# Change to project root (parent of scripts/)
|
|
cd "$(dirname "${BASH_SOURCE[0]}")/.."
|
|
|
|
# Get list of all services from docker-compose.yml
|
|
SERVICES=$(docker compose config --services)
|
|
|
|
# Build each service
|
|
for SERVICE in $SERVICES; do
|
|
echo -e "${BLUE}Building: ${SERVICE}${NC}"
|
|
if docker compose build "$SERVICE" 2>&1 | tail -5; then
|
|
echo -e "${GREEN}✓${NC} Successfully built $SERVICE"
|
|
else
|
|
echo -e "${RED}✗${NC} Failed to build $SERVICE"
|
|
echo -e "${YELLOW}Continuing with next service...${NC}"
|
|
fi
|
|
echo ""
|
|
done
|
|
|
|
echo -e "${GREEN}=== Build complete! ===${NC}"
|
|
echo ""
|
|
echo "To start all services:"
|
|
echo " docker compose up -d --profile dev"
|
|
echo ""
|
|
echo "To check status:"
|
|
echo " docker ps"
|