|
|
|
|
@@ -54,28 +54,44 @@ fi
|
|
|
|
|
|
|
|
|
|
echo "📦 Using compose file: $COMPOSE_FILE"
|
|
|
|
|
|
|
|
|
|
run_quiet() {
|
|
|
|
|
local label="$1"
|
|
|
|
|
shift
|
|
|
|
|
local log_file
|
|
|
|
|
log_file=$(mktemp)
|
|
|
|
|
if "$@" >"$log_file" 2>&1; then
|
|
|
|
|
rm -f "$log_file"
|
|
|
|
|
return 0
|
|
|
|
|
fi
|
|
|
|
|
echo "❌ ${label} failed"
|
|
|
|
|
echo "--- ${label} log ---"
|
|
|
|
|
tail -n 200 "$log_file"
|
|
|
|
|
rm -f "$log_file"
|
|
|
|
|
return 1
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
# Clean any previous containers first
|
|
|
|
|
echo "🧹 Cleaning up previous containers..."
|
|
|
|
|
docker compose -f "$COMPOSE_FILE" down -v 2>/dev/null || true
|
|
|
|
|
docker compose -f "$COMPOSE_FILE" down -v >/dev/null 2>&1 || true
|
|
|
|
|
|
|
|
|
|
# Build frontend with correct API base URL (force no cache, remove image first)
|
|
|
|
|
echo "🔨 Building frontend..."
|
|
|
|
|
docker rmi harborforge-test-frontend:dev 2>/dev/null || true
|
|
|
|
|
docker compose -f "$COMPOSE_FILE" build --no-cache --build-arg VITE_API_BASE=http://backend:8000 frontend
|
|
|
|
|
docker rmi harborforge-test-frontend:dev >/dev/null 2>&1 || true
|
|
|
|
|
run_quiet "frontend build" docker compose -f "$COMPOSE_FILE" build --no-cache --build-arg VITE_API_BASE=http://backend:8000 frontend
|
|
|
|
|
|
|
|
|
|
# Build backend (force no cache, remove image first)
|
|
|
|
|
echo "🔨 Building backend..."
|
|
|
|
|
docker rmi harborforge-test-backend:dev 2>/dev/null || true
|
|
|
|
|
docker compose -f "$COMPOSE_FILE" build --no-cache backend
|
|
|
|
|
docker rmi harborforge-test-backend:dev >/dev/null 2>&1 || true
|
|
|
|
|
run_quiet "backend build" docker compose -f "$COMPOSE_FILE" build --no-cache backend
|
|
|
|
|
|
|
|
|
|
# Build test runner (force no cache, remove image first)
|
|
|
|
|
echo "🔨 Building test runner..."
|
|
|
|
|
docker rmi harborforge-test-runner:dev 2>/dev/null || true
|
|
|
|
|
docker compose -f "$COMPOSE_FILE" build --no-cache test
|
|
|
|
|
docker rmi harborforge-test-runner:dev >/dev/null 2>&1 || true
|
|
|
|
|
run_quiet "test runner build" docker compose -f "$COMPOSE_FILE" build --no-cache test
|
|
|
|
|
|
|
|
|
|
# Start services
|
|
|
|
|
echo "📦 Starting services..."
|
|
|
|
|
docker compose -f "$COMPOSE_FILE" up -d
|
|
|
|
|
run_quiet "service startup" docker compose -f "$COMPOSE_FILE" up -d
|
|
|
|
|
|
|
|
|
|
# Wait for frontend to be ready
|
|
|
|
|
echo "⏳ Waiting for services..."
|
|
|
|
|
|