# Orchestrator Configuration Example - Solo Deployment Mode # # This example shows how to configure the orchestrator for # solo (single-node) deployments with minimal resource allocation. # # Usage: # nickel export --format toml orchestrator.solo.example.ncl > orchestrator.solo.toml # nickel export --format json orchestrator.solo.example.ncl | jq # # This configuration will be loaded by ConfigLoader at runtime. { # Workspace configuration for solo mode workspace = { root_path = "/var/provisioning/workspace", data_path = "/var/provisioning/workspace/data", state_path = "/var/provisioning/workspace/state", cache_path = "/var/provisioning/workspace/cache", isolation_level = 'process, execution_mode = 'local, }, # HTTP server settings - solo mode uses port 8080 server = { address = "0.0.0.0", port = 8080, tls = false, cors = { enabled = true, allowed_origins = ["*"], allowed_methods = ["GET", "POST", "PUT", "DELETE"], }, rate_limiting = { enabled = true, requests_per_second = 100, burst_size = 50, }, }, # Storage configuration for solo mode (local filesystem) storage = { backend = 'filesystem, path = "/var/provisioning/storage", max_size = 10737418240, # 10GB cache_enabled = true, cache_ttl = 3600, # 1 hour }, # Queue configuration - conservative for solo queue = { max_concurrent_tasks = 5, retry_attempts = 3, retry_delay = 5000, task_timeout = 3600000, persist = true, dead_letter_queue = { enabled = true, max_size = 1000, }, priority_queue = false, metrics = false, }, # Database configuration database = { host = "localhost", port = 5432, username = "provisioning", password = "changeme", # Should use secrets in production pool_size = 5, connection_timeout = 10000, }, # Logging configuration logging = { level = 'info, format = 'json, output = 'stdout, }, # Monitoring configuration monitoring = { enabled = true, metrics_port = 9090, health_check_interval = 30, }, # Security configuration security = { enable_auth = false, # Can be enabled later auth_backend = 'local, token_expiry = 86400, }, # Deployment mode identifier mode = 'solo, # Resource limits resources = { cpus = "1.0", memory = "1024M", disk = "10G", }, }