Claude
|
9a728f655a
|
Prevent BlackRoad-Operating-System monorepo from being added to Railway services
CRITICAL CHANGES:
- Add comprehensive deployment architecture documentation
- Prevent misconfiguration where monorepo is deployed instead of satellites
- Clarify monorepo-to-satellite sync model across all docs
CHANGES:
1. railway.toml
- Add critical warning banner at top of file
- Mark config as local development/testing only
- Explain correct deployment model (satellites, not monorepo)
2. DEPLOYMENT_ARCHITECTURE.md (NEW)
- Complete 500+ line deployment guide
- Monorepo vs satellite model explained in detail
- Critical rules: NEVER add monorepo to Railway
- Service-to-repository mapping
- Environment configuration guide
- Cloudflare DNS configuration
- Common mistakes and troubleshooting
3. README.md
- Add prominent deployment warning box
- Clarify monorepo is source of truth, not deployable
- List satellite repos that should be deployed
- Reference DEPLOYMENT_ARCHITECTURE.md
4. CLAUDE.md
- Add critical deployment model section
- Clarify Railway deployment is satellite-only
- Update deployment workflow explanation
- Add key rules for deployment
5. backend/.env.example
- Fix ALLOWED_ORIGINS to reference satellites
- Remove monorepo Railway URL reference
- Add correct satellite service URLs
6. ops/domains.yaml
- Fix os.blackroad.systems DNS target
- Point to blackroad-os-core-production (satellite)
- Remove incorrect monorepo Railway URL
7. scripts/validate_deployment_config.py (NEW)
- Automated validation script
- Checks for monorepo references in configs
- Validates railway.toml, env files, DNS configs
- Ensures DEPLOYMENT_ARCHITECTURE.md exists
- Exit code 0 = pass, 1 = fail
WHY THIS MATTERS:
- Adding monorepo to Railway creates circular deploy loops
- Environment variables break (wrong service URLs)
- Cloudflare routing fails
- Service dependencies misconfigured
- Prevents production outages from misconfiguration
CORRECT MODEL:
- Monorepo = source of truth (orchestration only)
- Satellites = deployable services (Railway deployment)
- Code flows: monorepo → sync → satellite → Railway
See: DEPLOYMENT_ARCHITECTURE.md for complete details
|
2025-11-19 22:31:22 +00:00 |
|