TSH Deployment
Quick Deploy
bash
# Deploy to PRODUCTION cd "/Users/khaleelal-mulla/General/ Projects/tsh-clients-console" vercel --prod --yes
URLs
| Environment | URL |
|---|---|
| Production | https://www.tsh.sale |
| Staging | https://staging.tsh.sale |
| Vercel Default | https://tsh-clients-console.vercel.app |
Deployment Workflow
1. Pre-deployment Checks
bash
# Run type check npm run build # Check for lint errors npm run lint # Verify environment variables vercel env ls
2. Deploy to Staging (Optional)
bash
vercel --yes # Verify at staging.tsh.sale
3. Deploy to Production
bash
vercel --prod --yes
4. Post-deployment
bash
# Revalidate caches curl "https://www.tsh.sale/api/revalidate?tag=all&secret=tsh-revalidate-2024" # Verify site is up curl -I https://www.tsh.sale
Environment Variables
Required Variables (Vercel Dashboard)
bash
# Zoho OAuth ZOHO_CLIENT_ID=<client_id> ZOHO_CLIENT_SECRET=<client_secret> ZOHO_REFRESH_TOKEN=<refresh_token> ZOHO_ORGANIZATION_ID=748369814 # Upstash Redis (CRITICAL for token caching) UPSTASH_REDIS_REST_URL=https://fine-mole-41883.upstash.io UPSTASH_REDIS_REST_TOKEN=<token> # NextAuth NEXTAUTH_URL=https://www.tsh.sale NEXTAUTH_SECRET=<secret> # Email RESEND_API_KEY=<api_key> EMAIL_FROM=TSH <noreply@tsh.sale>
Managing Variables
bash
# List all variables vercel env ls # Add variable vercel env add VARIABLE_NAME production preview # Remove variable vercel env rm VARIABLE_NAME production preview
Domain Configuration
DNS Records (Namecheap):
code
www CNAME cname.vercel-dns.com staging CNAME cname.vercel-dns.com _vercel TXT <verification>
Common Issues
"Contact for price" after deploy
- •Upstash Redis env vars missing
- •Solution: Verify
UPSTASH_REDIS_REST_URLandUPSTASH_REDIS_REST_TOKEN
Stock/prices not updating
- •Cache needs revalidation
- •Solution:
curl "https://www.tsh.sale/api/revalidate?tag=all&secret=tsh-revalidate-2024"
Build fails
- •Type errors
- •Solution: Run
npm run buildlocally first
OAuth errors
- •Token expired
- •Solution: Generate new refresh token in Zoho API Console
Vercel Dashboard
- •Project: https://vercel.com/tsh-03790822/tsh-clients-console
- •Deployments: Check deployment logs
- •Settings: Environment variables, domains
Rollback
bash
# List recent deployments vercel ls # Promote previous deployment vercel promote <deployment-url>
Cache Revalidation
bash
# All caches curl "https://www.tsh.sale/api/revalidate?tag=all&secret=tsh-revalidate-2024" # Specific tags curl "https://www.tsh.sale/api/revalidate?tag=products&secret=tsh-revalidate-2024" curl "https://www.tsh.sale/api/revalidate?tag=price-lists&secret=tsh-revalidate-2024"
Deployment Checklist
- • Run
npm run buildlocally - • Fix any type/lint errors
- • Commit all changes
- • Deploy:
vercel --prod --yes - • Wait for deployment to complete
- • Verify site:
curl -I https://www.tsh.sale - • Revalidate caches if needed
- • Test critical pages (shop, login, dashboard)