Platform restructured into crates/, added AI service and detector,
migrated control-center-ui to Leptos 0.8
109 lines
3.4 KiB
Markdown
109 lines
3.4 KiB
Markdown
# Platform Service Configuration Files
|
||
|
||
This directory contains **16 production-ready TOML configuration files** generated from Nickel schemas for all platform services across all deployment modes.
|
||
|
||
## Generated Files
|
||
|
||
**4 Services × 4 Deployment Modes = 16 Configuration Files**
|
||
|
||
```
|
||
orchestrator.{solo,multiuser,cicd,enterprise}.toml (2.2 kB each)
|
||
control-center.{solo,multiuser,cicd,enterprise}.toml (3.4 kB each)
|
||
mcp-server.{solo,multiuser,cicd,enterprise}.toml (2.7 kB each)
|
||
installer.{solo,multiuser,cicd,enterprise}.toml (2.5 kB each)
|
||
```
|
||
|
||
**Total**: ~45 KB, all validated and ready for deployment
|
||
|
||
## Deployment Modes
|
||
|
||
| Mode | Resources | Database | Use Case | Load |
|
||
|------|-----------|----------|----------|------|
|
||
| **solo** | 2 CPU, 4 GB | Embedded | Development | `ORCHESTRATOR_MODE=solo` |
|
||
| **multiuser** | 4 CPU, 8 GB | PostgreSQL/SurrealDB | Team Staging | `ORCHESTRATOR_MODE=multiuser` |
|
||
| **cicd** | 8 CPU, 16 GB | Ephemeral | CI/CD Pipelines | `ORCHESTRATOR_MODE=cicd` |
|
||
| **enterprise** | 16+ CPU, 32+ GB | SurrealDB HA | Production | `ORCHESTRATOR_MODE=enterprise` |
|
||
|
||
## Quick Start
|
||
|
||
### Load a configuration mode
|
||
|
||
```bash
|
||
# Solo mode (single developer)
|
||
export ORCHESTRATOR_MODE=solo
|
||
export CONTROL_CENTER_MODE=solo
|
||
|
||
# Multiuser mode (team development)
|
||
export ORCHESTRATOR_MODE=multiuser
|
||
export CONTROL_CENTER_MODE=multiuser
|
||
|
||
# Enterprise mode (production HA)
|
||
export ORCHESTRATOR_MODE=enterprise
|
||
export CONTROL_CENTER_MODE=enterprise
|
||
```
|
||
|
||
### Override individual fields
|
||
|
||
```bash
|
||
export ORCHESTRATOR_SERVER_WORKERS=8
|
||
export ORCHESTRATOR_SERVER_PORT=9090
|
||
export CONTROL_CENTER_REQUIRE_MFA=true
|
||
```
|
||
|
||
## Configuration Loading Hierarchy
|
||
|
||
Each service loads configuration with this priority:
|
||
|
||
1. **Explicit path** — `{SERVICE}_CONFIG` environment variable
|
||
2. **Mode-specific** — `{SERVICE}_MODE` → `provisioning/platform/config/{service}.{mode}.toml`
|
||
3. **Legacy** — `config.user.toml` (backward compatibility)
|
||
4. **Defaults** — `config.defaults.toml` or built-in
|
||
5. **Field overrides** — `{SERVICE}_*` environment variables
|
||
|
||
## Docker Compose Integration
|
||
|
||
```bash
|
||
export DEPLOYMENT_MODE=multiuser
|
||
docker-compose -f provisioning/platform/infrastructure/docker/docker-compose.yml up
|
||
```
|
||
|
||
## Kubernetes Integration
|
||
|
||
```bash
|
||
# Load enterprise mode configs into K8s
|
||
kubectl create configmap orchestrator-config \
|
||
--from-file=provisioning/platform/config/orchestrator.enterprise.toml
|
||
```
|
||
|
||
## Validation
|
||
|
||
Verify all configs parse correctly:
|
||
|
||
```bash
|
||
for file in *.toml; do
|
||
nu -c "open '$file'" && echo "✅ $file" || echo "❌ $file"
|
||
done
|
||
```
|
||
|
||
## Structure
|
||
|
||
- **orchestrator.*.toml** — Workflow engine configuration
|
||
- **control-center.*.toml** — Policy/RBAC backend configuration
|
||
- **mcp-server.*.toml** — MCP server configuration
|
||
- **installer.*.toml** — Installation/bootstrap configuration
|
||
|
||
Each file contains service-specific settings for networking, storage, security, logging, and monitoring.
|
||
|
||
## Related Documentation
|
||
|
||
- **Configuration workflow**: `provisioning/.typedialog/provisioning/platform/configuration-workflow.md`
|
||
- **Usage guide**: `provisioning/.typedialog/provisioning/platform/usage-guide.md`
|
||
- **Schema definitions**: `provisioning/.typedialog/provisioning/platform/schemas/`
|
||
- **Default values**: `provisioning/.typedialog/provisioning/platform/defaults/`
|
||
|
||
## Generated By
|
||
|
||
**Framework**: TypeDialog + Nickel Configuration System
|
||
**Date**: 2026-01-05
|
||
**Status**: ✅ Production Ready
|