Files
dbis_core/frontend/VERIFICATION_REPORT.md
2026-01-02 20:27:42 -08:00

4.6 KiB

Frontend Deployment Verification Report

Date: $(date)
Container: VMID 10130 (dbis-frontend)


Verification Checklist

Run the following commands to verify the frontend deployment:

1. Container Status

pct status 10130

Expected: Container should be running

2. Frontend Build Directory

pct exec 10130 -- ls -la /opt/dbis-core/frontend/dist/

Expected: Should show index.html and asset files

3. Index.html Exists

pct exec 10130 -- test -f /opt/dbis-core/frontend/dist/index.html && echo "✅ EXISTS" || echo "❌ MISSING"

Expected: EXISTS

4. Nginx Status

pct exec 10130 -- systemctl is-active nginx && echo "✅ RUNNING" || echo "❌ NOT RUNNING"

Expected: RUNNING

5. Nginx Configuration

pct exec 10130 -- cat /etc/nginx/sites-available/dbis-frontend | grep root

Expected: Should show root /opt/dbis-core/frontend/dist;

6. Node.js Installation

pct exec 10130 -- node --version
pct exec 10130 -- npm --version

Expected: Node.js 18+ and npm installed

7. Dependencies

pct exec 10130 -- test -d /opt/dbis-core/frontend/node_modules && echo "✅ EXISTS" || echo "❌ MISSING"

Expected: EXISTS

8. Build Files Count

pct exec 10130 -- ls -la /opt/dbis-core/frontend/dist/*.js 2>/dev/null | wc -l

Expected: Should show multiple JS files (typically 5-10+)

9. Nginx Access Logs

pct exec 10130 -- tail -20 /var/log/nginx/access.log

Expected: Should show recent HTTP requests

10. Test HTTP Response

curl -I http://192.168.11.130 2>/dev/null | head -5

Expected: Should return HTTP 200 with Content-Type: text/html


Quick Verification Script

Run this to check everything at once:

#!/bin/bash
VMID=10130

echo "=== Frontend Deployment Verification ==="
echo ""

echo "1. Container Status:"
pct status $VMID 2>/dev/null || echo "  ❌ Container not found"
echo ""

echo "2. Build Directory:"
pct exec $VMID -- bash -c "test -d /opt/dbis-core/frontend/dist && echo '  ✅ dist/ exists' || echo '  ❌ dist/ missing'" 2>/dev/null || echo "  ❌ Cannot access"
echo ""

echo "3. Index.html:"
pct exec $VMID -- bash -c "test -f /opt/dbis-core/frontend/dist/index.html && echo '  ✅ index.html exists' || echo '  ❌ index.html missing'" 2>/dev/null || echo "  ❌ Cannot check"
echo ""

echo "4. Nginx Status:"
pct exec $VMID -- bash -c "systemctl is-active nginx && echo '  ✅ Nginx running' || echo '  ❌ Nginx not running'" 2>/dev/null || echo "  ❌ Cannot check"
echo ""

echo "5. Nginx Root Directory:"
pct exec $VMID -- bash -c "grep 'root' /etc/nginx/sites-available/dbis-frontend 2>/dev/null | head -1" 2>/dev/null || echo "  ❌ Config not found"
echo ""

echo "6. Build Files:"
JS_COUNT=$(pct exec $VMID -- bash -c "ls -1 /opt/dbis-core/frontend/dist/*.js 2>/dev/null | wc -l" 2>/dev/null || echo "0")
if [ "$JS_COUNT" -gt "0" ]; then
    echo "  ✅ Found $JS_COUNT JavaScript files"
else
    echo "  ❌ No JavaScript files found"
fi
echo ""

echo "=== Verification Complete ==="

Common Issues & Fixes

Issue: dist/ folder doesn't exist

Fix: Build the frontend

pct exec 10130 -- bash -c "cd /opt/dbis-core/frontend && npm run build"

Issue: Nginx not running

Fix: Start nginx

pct exec 10130 -- systemctl start nginx

Issue: Wrong nginx root directory

Fix: Update nginx config

pct exec 10130 -- bash -c "sed -i 's|root.*|root /opt/dbis-core/frontend/dist;|' /etc/nginx/sites-available/dbis-frontend && nginx -t && systemctl reload nginx"

Issue: Dependencies missing

Fix: Install dependencies

pct exec 10130 -- bash -c "cd /opt/dbis-core/frontend && npm install"

Expected File Structure

/opt/dbis-core/frontend/
├── dist/
│   ├── index.html          ✅ Must exist
│   ├── assets/
│   │   ├── index-*.js      ✅ Multiple JS files
│   │   ├── index-*.css     ✅ CSS files
│   │   └── *.svg, *.png   ✅ Assets
│   └── vite.svg           ✅ Favicon
├── node_modules/          ✅ Dependencies
├── src/                   ✅ Source code
├── package.json           ✅ Config
└── vite.config.ts         ✅ Build config

Next Steps After Verification

If verification passes:

  1. Frontend is properly deployed
  2. Clear browser cache
  3. Access http://192.168.11.130
  4. Should see the React app, not placeholder

If verification fails:

  1. Run the fix script: ./scripts/fix-frontend-deployment.sh
  2. Check error messages
  3. Review logs: pct exec 10130 -- journalctl -u nginx -n 50