# Render Deployment Configuration for AegisLM SaaS Backend # Production-ready deployment on Render + Upstash + Neon services: # Main API Service - type: web name: aegislm-api env: python plan: starter buildCommand: pip install -r requirements.txt startCommand: uvicorn main:app --host 0.0.0.0 --port $PORT healthCheckPath: /health autoDeploy: true # Environment Variables (Set these in Render Dashboard) envVars: - key: PYTHON_VERSION value: 3.11 - key: APP_NAME value: "AegisLM Red Team API" - key: APP_VERSION value: "1.0.0" - key: DEBUG value: false - key: API_V1_STR value: "/api/v1" # Security (Set in Render Dashboard) - key: SECRET_KEY generateValue: true - key: ALGORITHM value: "HS256" - key: ACCESS_TOKEN_EXPIRE_MINUTES value: 30 # Database (Neon PostgreSQL) - key: DATABASE_URL fromDatabase: name: aegislm-db property: connectionString # Redis (Upstash) - key: REDIS_URL fromService: type: redis name: aegislm-redis property: connectionString # CORS (Update with your frontend domain) - key: BACKEND_CORS_ORIGINS value: "https://your-frontend-domain.com" # Rate Limiting - key: RATE_LIMIT_PER_MINUTE value: 60 - key: RATE_LIMIT_BURST value: 10 # Logging - key: LOG_LEVEL value: "INFO" - key: ENABLE_REQUEST_LOGGING value: true # Learning System - key: ENABLE_LEARNING value: true - key: TARGET_MODELS value: "gpt-3.5-turbo,gpt-4,claude-3" # Model Provider Keys (Set in Render Dashboard) - key: OPENAI_API_KEY sync: false - key: ANTHROPIC_API_KEY sync: false - key: GOOGLE_API_KEY sync: false # Monitoring - key: ENABLE_PERFORMANCE_MONITORING value: true - key: ENABLE_ERROR_TRACKING value: true - key: HEALTH_CHECK_INTERVAL value: 30 # Worker Service - type: worker name: aegislm-worker env: python plan: starter buildCommand: pip install -r requirements.txt startCommand: celery -A workers.celery_worker worker --loglevel=info --concurrency=2 autoDeploy: true # Environment Variables (Same as API service) envVars: - key: PYTHON_VERSION value: 3.11 - key: APP_NAME value: "AegisLM Worker" - key: DEBUG value: false # Database (Neon PostgreSQL) - key: DATABASE_URL fromDatabase: name: aegislm-db property: connectionString # Redis (Upstash) - key: REDIS_URL fromService: type: redis name: aegislm-redis property: connectionString # Celery Settings - key: CELERY_WORKER_CONCURRENCY value: 2 - key: CELERY_TASK_RATE_LIMIT value: "10/m" # Learning System - key: ENABLE_LEARNING value: true # Model Provider Keys (Set in Render Dashboard) - key: OPENAI_API_KEY sync: false - key: ANTHROPIC_API_KEY sync: false - key: GOOGLE_API_KEY sync: false # Databases databases: # Neon PostgreSQL Database - name: aegislm-db databaseName: aegislm user: aegislm_user # Redis Instance redis: - name: aegislm-redis plan: starter