# Rocky Mountain Coolify Launch ## Staging - Coolify project: `Rocky Mountain Vending` - Coolify app UUID: `bsowk840kccg08coocwwc44c` - Environment UUID: `ew8k8og0gw48swck4ckk84kk` - Forgejo repo: `https://git.abundancepartners.app/matt/Rocky_Mountain_Vending.git` - Branch: `main` - Build pack: `dockerfile` - Dockerfile: `/Dockerfile` - Port: `3001` - Healthcheck port: `3001` - Staging host: `rmv.abundancepartners.app` - Preview URL: `https://bsowk840kccg08coocwwc44c.85.239.237.247.sslip.io` - DNS: `A rmv.abundancepartners.app -> 85.239.237.247` (`DNS only`, `TTL Auto`) - Auto deploy webhook: `https://app.abundancepartners.app/webhooks/source/gitea/events/manual` - Manual Gitea secret: `deploy123` ## DNS Note - `rmv.abundancepartners.app` is managed in Cloudflare. - The active DNS record is an unproxied `A` record to `85.239.237.247`. ## Required App Env - `NEXT_PUBLIC_SITE_DOMAIN=rockymountainvending.com` - `NEXT_PUBLIC_SITE_URL=https://rockymountainvending.com` - `CONVEX_URL` - `NEXT_PUBLIC_CONVEX_URL` - `CONVEX_DEPLOY_ON_BUILD=false` - `CONVEX_SELF_HOSTED_URL` - `CONVEX_SELF_HOSTED_ADMIN_KEY` - `CONVEX_TENANT_SLUG=rocky_mountain_vending` - `CONVEX_TENANT_NAME=Rocky Mountain Vending` - `USESEND_API_KEY` - `USESEND_BASE_URL` - `USESEND_FROM_EMAIL` - `CONTACT_FORM_TO_EMAIL` - `GHL_API_TOKEN` - `GHL_LOCATION_ID=YAoWLgNSid8oG44j9BjG` - `ADMIN_UI_ENABLED=false` - `ADMIN_API_TOKEN` - `LIVEKIT_URL` - `LIVEKIT_API_KEY` - `LIVEKIT_API_SECRET` ## Current Runtime Defaults - Email is launch-ready through AWS SES fallback with `AWS_ACCESS_KEY`, `AWS_SECRET_KEY`, and `AWS_DEFAULT_REGION`. - GHL is not complete until `GHL_API_TOKEN` is added. - Dedicated Usesend remains optional follow-up until `USESEND_API_KEY` and `USESEND_BASE_URL` exist. - Self-hosted Convex tenant deployment is still blocked upstream by a `502`, so live tenant-scoped backend writes are not fully confirmed yet. ## Email Notes - The app prefers Usesend when `USESEND_API_KEY` is present. - If Usesend is not ready yet, the lead pipeline can fall back to AWS SES using `AWS_ACCESS_KEY`, `AWS_SECRET_KEY`, and `AWS_DEFAULT_REGION`. - Keep all email secrets in Coolify-managed env vars. ## Local Handoff Files - `.env.rocky-workstation` contains the other-workstation operational variables and webhook details. - `.env.rocky-coolify` contains the current Coolify app env bundle with blanks for the still-missing secrets. ## Canonical Handoff Variables Use this markdown section as the source of truth if you need to recreate the handoff elsewhere. ### Other Workstation ```env COOLIFY_API_URL=http://85.239.237.247:8000/api/v1 COOLIFY_API_TOKEN=4|ScZUAuJPRPWBSdXWhtW3tkYBcoALayIYnw5zsgCse0a02bb5 FORGEJO_API_TOKEN=e2c129342b9de678c79f1988821dc298d158e5e9 COOLIFY_APP_UUID=bsowk840kccg08coocwwc44c COOLIFY_PROJECT_UUID=zk44w8sgg8w4k48ow0ws8800 COOLIFY_ENVIRONMENT_UUID=ew8k8og0gw48swck4ckk84kk COOLIFY_DEPLOY_WEBHOOK=https://app.abundancepartners.app/webhooks/source/gitea/events/manual COOLIFY_MANUAL_WEBHOOK_SECRET_GITEA=deploy123 ROCKY_FORGEJO_REPO=https://git.abundancepartners.app/matt/Rocky_Mountain_Vending.git ROCKY_STAGING_PREVIEW_URL=https://bsowk840kccg08coocwwc44c.85.239.237.247.sslip.io ROCKY_STAGING_HOST=rmv.abundancepartners.app ROCKY_TARGET_IP=85.239.237.247 GHL_API_TOKEN= USESEND_API_KEY= USESEND_BASE_URL= ADMIN_API_TOKEN= ``` ### Coolify App Env ```env NEXT_PUBLIC_SITE_DOMAIN=rockymountainvending.com NEXT_PUBLIC_SITE_URL=https://rockymountainvending.com CONVEX_URL=http://backend-pw40wwwg0g8k4oc0c88c8coc.85.239.237.247.sslip.io NEXT_PUBLIC_CONVEX_URL=http://backend-pw40wwwg0g8k4oc0c88c8coc.85.239.237.247.sslip.io CONVEX_DEPLOY_ON_BUILD=false CONVEX_SELF_HOSTED_URL=http://backend-pw40wwwg0g8k4oc0c88c8coc.85.239.237.247.sslip.io CONVEX_SELF_HOSTED_ADMIN_KEY=self-hosted-convex|0134210b08690a9825efddde41dda9ef3bdc635c2a4d80adca7f6ec86132e6a5d6783409d9 CONVEX_TENANT_SLUG=rocky_mountain_vending CONVEX_TENANT_NAME=Rocky Mountain Vending USESEND_FROM_EMAIL=hello@abundancepartners.app CONTACT_FORM_TO_EMAIL=hello@abundancepartners.app AWS_ACCESS_KEY=AKIA2U3DEAAHCXDXR6XT AWS_SECRET_KEY=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 AWS_DEFAULT_REGION=us-east-1 GHL_LOCATION_ID=YAoWLgNSid8oG44j9BjG ADMIN_UI_ENABLED=false LIVEKIT_URL= LIVEKIT_API_KEY= LIVEKIT_API_SECRET= GHL_API_TOKEN= USESEND_API_KEY= USESEND_BASE_URL= ADMIN_API_TOKEN= ``` ## Validation Snapshot - `https://rmv.abundancepartners.app` returns `200 OK` - `POST /api/contact` with `{}` on `https://rmv.abundancepartners.app` returns `400` - Pushes to Forgejo `main` queue Coolify deployments automatically