Quick reference for deploying Yoto Smart Stream to Railway.
# Install Railway CLI (done automatically in devcontainer)
npm i -g @railway/cli
# Authenticate
railway login
# Link to project
railway link# Dry run (preview what will happen)
./scripts/deploy.sh staging --dry-run
# Deploy to staging
./scripts/deploy.sh staging
# Deploy to development
./scripts/deploy.sh development
# Production is BLOCKED
./scripts/deploy.sh production # ❌ Will fail with error# Push to develop branch → auto-deploys to staging
git checkout develop
git push origin develop
# Monitor deployment
# Go to: https://github.com/earchibald/yoto-smart-stream/actions# View logs
railway logs -e staging -f
# Check status
railway status -e staging
# Open dashboard
railway open -e stagingSet via Railway CLI or Dashboard:
# Required
railway variables set YOTO_CLIENT_ID="your_id" -e staging
# Optional
railway variables set DEBUG=true -e staging
railway variables set LOG_LEVEL=DEBUG -e staging
railway variables set PUBLIC_URL="https://your-app.up.railway.app" -e staging# Verify deployment setup
python scripts/test_deployment_setup.py
# Check health endpoint
curl https://your-app.up.railway.app/healthnpm i -g @railway/clirailway login# Check logs
railway logs -e staging
# Verify tests pass
pytest tests/ -v| Environment | Branch | Status | Auto-Deploy |
|---|---|---|---|
| Production | main |
⏸️ Disabled | ❌ No |
| Staging | develop |
✅ Active | ✅ Yes |
| Development | manual | ✅ Active | ❌ No |
railway.toml- Railway configurationscripts/deploy.sh- Deployment script.github/workflows/railway-deploy.yml- CI/CD workflowdocs/RAILWAY_DEPLOYMENT.md- Full documentation
- Full Guide: docs/RAILWAY_DEPLOYMENT.md
- Railway Docs: https://docs.railway.app/
- Issues: https://github.com/earchibald/yoto-smart-stream/issues