Files
metabuilder/codegen/scripts/verify-docker-build.sh
johndoe6345789 a51130a127 feat: Add external low-code and postgres repositories
- codegen: Low-code React app with JSON-driven component system
- packagerepo: Schema-driven package repository with backend/frontend
- postgres: Next.js app with Drizzle ORM and PostgreSQL

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 16:48:52 +00:00

81 lines
1.9 KiB
Bash

#!/bin/bash
# Docker Build Verification Script
# Checks that all prerequisites are met before building Docker image
set -e
echo "🔍 Checking Docker build prerequisites..."
echo ""
# Check if Dockerfile exists
if [ ! -f "Dockerfile" ]; then
echo "❌ Dockerfile not found"
exit 1
fi
echo "✅ Dockerfile found"
# Check if package.json exists
if [ ! -f "package.json" ]; then
echo "❌ package.json not found"
exit 1
fi
echo "✅ package.json found"
# Check if workspace packages exist
if [ ! -d "packages/spark-tools" ]; then
echo "❌ packages/spark-tools directory not found"
exit 1
fi
echo "✅ packages/spark-tools directory found"
if [ ! -d "packages/spark" ]; then
echo "❌ packages/spark directory not found"
exit 1
fi
echo "✅ packages/spark directory found"
# Check if spark-tools is built
if [ ! -d "packages/spark-tools/dist" ]; then
echo "⚠️ packages/spark-tools/dist not found - building now..."
cd packages/spark-tools
npm install
npm run build
cd ../..
echo "✅ Built spark-tools"
else
echo "✅ packages/spark-tools/dist found"
fi
# Verify critical files in dist
CRITICAL_FILES=(
"packages/spark-tools/dist/sparkVitePlugin.js"
"packages/spark-tools/dist/index.js"
"packages/spark-tools/dist/spark.js"
)
for file in "${CRITICAL_FILES[@]}"; do
if [ ! -f "$file" ]; then
echo "❌ Critical file missing: $file"
exit 1
fi
done
echo "✅ All critical dist files present"
# Check Docker is available
if ! command -v docker &> /dev/null; then
echo "⚠️ Docker not found - skipping Docker checks"
else
echo "✅ Docker is available"
docker --version
fi
echo ""
echo "🎉 All prerequisites satisfied!"
echo ""
echo "You can now build the Docker image with:"
echo " docker build -t codeforge:local ."
echo ""
echo "Or run the full CI pipeline locally with GitHub Actions:"
echo " act -j docker-build"