Rocky_Mountain_Vending/COOLIFY_LAUNCH.md
2026-03-25 19:53:12 -06:00

113 lines
4.5 KiB
Markdown

# 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