Files
warehouse13/check-ready.sh
Mondo Diaz c7abff0c92 Add better documentation and scripts for air-gapped deployment
Created new helper scripts:
- quickstart-airgap.sh: One-command deployment for restricted environments
- check-ready.sh: Validates that pre-built files exist before deployment

Updated documentation:
- Enhanced Dockerfile.frontend.prebuilt with clearer error messages
- Updated DEPLOYMENT.md with step-by-step quick start guide
- Updated README.md to distinguish standard vs air-gapped deployment

Key improvements:
- Clear warning that build must happen BEFORE docker-compose
- Helper script that combines build + deployment steps
- Readiness check to catch missing pre-built files early
- Better instructions for test environments with restricted npm access

This addresses the common error where Docker fails because
frontend/dist/frontend/browser doesn't exist yet.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-16 10:18:44 -05:00

63 lines
1.8 KiB
Bash
Executable File

#!/bin/bash
echo "========================================="
echo "Warehouse13 - Readiness Check"
echo "========================================="
echo ""
errors=0
# Check if pre-built files exist
if [ -d "frontend/dist/frontend/browser" ]; then
echo "✓ Pre-built Angular files found"
echo " Location: frontend/dist/frontend/browser"
file_count=$(ls -1 frontend/dist/frontend/browser | wc -l)
echo " Files: $file_count"
else
echo "✗ ERROR: Pre-built Angular files NOT found!"
echo " Expected: frontend/dist/frontend/browser"
echo ""
echo " You need to build the Angular app first:"
echo " Run: ./build-for-airgap.sh"
echo " OR: cd frontend && npm install && npm run build:prod"
echo ""
errors=$((errors + 1))
fi
echo ""
# Check if docker-compose.yml is configured for pre-built
if grep -q "Dockerfile.frontend.prebuilt" docker-compose.yml; then
echo "✓ docker-compose.yml configured for pre-built deployment"
else
echo "⚠ WARNING: docker-compose.yml may not be configured for pre-built deployment"
echo " Current frontend dockerfile:"
grep "dockerfile:" docker-compose.yml | grep -A 1 "frontend:" | tail -1
echo ""
echo " For air-gapped deployment, it should be: Dockerfile.frontend.prebuilt"
fi
echo ""
# Check if Docker is running
if docker info &> /dev/null; then
echo "✓ Docker is running"
else
echo "✗ ERROR: Docker is not running or not accessible"
errors=$((errors + 1))
fi
echo ""
echo "========================================="
if [ $errors -eq 0 ]; then
echo "✓ Ready to deploy!"
echo ""
echo "Run: docker-compose up -d --build"
echo "Or: ./quickstart-airgap.sh"
exit 0
else
echo "✗ NOT ready - please fix the errors above"
exit 1
fi