Files
miracles_in_motion/docs/DEPLOYMENT_PREREQUISITES.md
T
defiQUGandCursor e3a171c5ff Remove Azure deployment stack; Proxmox 7810 is canonical production.
Delete Static Web Apps workflow, Bicep infra, Azure Functions api/, SWA configs, and Azure-only scripts; document Proxmox deploy path and refresh QuickStart and prerequisites.

Co-authored-by: Cursor <[email protected]>
2026-06-15 19:41:08 -07:00

2.2 KiB

Deployment prerequisites (Proxmox production)

Azure removed (2026-06): Static Web Apps, Bicep infra, Azure Functions (api/), and Azure CI workflows are no longer part of this repo. Production is VMID 7810 via Proxmox — see PROXMOX_DEPLOYMENT.md.

1. Operator / LAN access

Requirement Detail
Proxmox SSH [email protected] (r630-02)
Web CT VMID 7810 @ 192.168.11.37
API CT VMID 7811 @ 192.168.11.36 (optional; /api/ proxy)
Deploy script ../proxmox/scripts/mim4u-deploy-to-7810.sh

2. Build toolchain

node -v    # 22.x recommended
npm -v     # 10+
convert -version   # ImageMagick (brand prebuild)

Install deps:

cd miracles_in_motion
npm ci    # uses legacy-peer-deps via .npmrc

3. Environment variables

Copy .env.example → .env.local for local dev. Production frontend is static; secrets belong on 7811 (API) or NPMplus, not in the Vite bundle.

Variable Purpose
VITE_STRIPE_PUBLISHABLE_KEY Donate page (public key only)
VITE_API_BASE_URL Override API base (default /api via nginx)
VITE_GA_MEASUREMENT_ID Analytics (optional)

See env.production.example for a non-Azure production template.

4. Pre-deploy checklist

  • npm run validate:ci passes (type-check + tests + header WCAG audit)
  • npm run build succeeds (brand export + Vite)
  • NPMplus TLS valid for mim4u.org / www / secure / training
  • ./scripts/mim4u-deploy-to-7810.sh from proxmox repo (or --dry-run review)
  • Post-deploy: curl -H 'Host: mim4u.org' http://192.168.11.37/ → 200
  • Optional: npm run a11y:header-audit:live on production URL

5. Stripe & DNS (unchanged)

  • Stripe: live keys and webhooks configured on API (7811), not in this static repo.
  • Cloudflare / DNS: A/AAAA or CNAME to public IP per NPMplus; use proxmox scripts/update-all-dns-to-public-ip.sh --zone-only=mim4u.org --dry-run before changes.

6. Legacy Azure documentation

Historical docs under docs/deployment/ and docs/phases/ may still mention Azure. Treat them as archived; do not follow for new deploys.