152 lines
3.7 KiB
TOML
152 lines
3.7 KiB
TOML
# Provisioning Daemon Configuration
|
|
#
|
|
# This configuration file is used by provisioning-daemon-cli to set up the daemon
|
|
# with Nushell execution support. It extends the base prov-ecosystem daemon configuration
|
|
# with provisioning-specific settings.
|
|
|
|
[daemon]
|
|
# Daemon name
|
|
name = "provisioning-daemon-cli"
|
|
# Daemon mode
|
|
mode = "provisioning"
|
|
|
|
[server]
|
|
# Server binding address
|
|
bind = "127.0.0.1:9091"
|
|
# Executor strategy (subprocess, persistent, or hybrid)
|
|
executor_strategy = "persistent"
|
|
# Path to ecosystem installation
|
|
ecosystem_path = "~/.local/share/prov-ecosystem"
|
|
# Path to provisioning modules (Nushell)
|
|
nushell_path = "~/.config/provisioning"
|
|
|
|
[nushell]
|
|
# Enable Nushell integration
|
|
enabled = true
|
|
# Persistent executor for <5ms execution overhead
|
|
persistent_executor = true
|
|
# Pre-load environment at daemon startup
|
|
preload_enabled = true
|
|
# Path to pre-load Nushell modules from
|
|
preload_path = "~/.config/provisioning/preload.nu"
|
|
# Cache size for command results
|
|
cache_size = 1000
|
|
# Default timeout for Nushell commands (milliseconds)
|
|
default_timeout_ms = 100
|
|
# Maximum concurrent executions
|
|
max_concurrent = 10
|
|
|
|
[watcher]
|
|
# Enable file watching for hot-reload
|
|
enabled = true
|
|
# Watch paths relative to provisioning directory
|
|
watch_paths = [
|
|
"core/nulib",
|
|
"config/templates",
|
|
"extensions"
|
|
]
|
|
# File extensions to monitor (.nu, .k, .toml, .yaml)
|
|
watch_extensions = ["nu", "k", "toml", "yaml"]
|
|
# Debounce duration in milliseconds
|
|
debounce_ms = 100
|
|
# Enable debug logging for watcher
|
|
debug = false
|
|
|
|
[cache]
|
|
# Hierarchical cache configuration
|
|
[cache.command]
|
|
# Layer 1: Command cache (1 hour TTL)
|
|
size_mb = 50
|
|
ttl_seconds = 3600
|
|
# Number of entries
|
|
max_entries = 1000
|
|
|
|
[cache.config]
|
|
# Layer 2: Config cache (5 minute TTL)
|
|
size_mb = 100
|
|
ttl_seconds = 300
|
|
# Number of entries
|
|
max_entries = 500
|
|
|
|
[cache.module]
|
|
# Layer 3: Module cache (permanent)
|
|
size_mb = 200
|
|
ttl_seconds = 0 # No expiration
|
|
# Number of entries
|
|
max_entries = 200
|
|
|
|
[paths]
|
|
# Base provisioning directory
|
|
provisioning_base = "~/.config/provisioning"
|
|
# Workspace configuration directory
|
|
workspace_base = "~/.config/provisioning/workspace"
|
|
# Nushell modules directory
|
|
nulib_base = "~/.config/provisioning/core/nulib"
|
|
# Template directory
|
|
templates_base = "~/.config/provisioning/config/templates"
|
|
# Extensions directory
|
|
extensions_base = "~/.config/provisioning/extensions"
|
|
# Logs directory
|
|
logs_base = "~/.local/share/provisioning/logs"
|
|
|
|
[logging]
|
|
# Log level (trace, debug, info, warn, error)
|
|
level = "info"
|
|
# Log format (compact, full, json)
|
|
format = "compact"
|
|
# Log to file
|
|
file_enabled = true
|
|
# Log file path
|
|
file_path = "~/.local/share/provisioning/logs/provisioning-daemon.log"
|
|
# Maximum log file size in MB
|
|
file_max_size_mb = 100
|
|
# Number of backup log files to keep
|
|
file_backup_count = 5
|
|
|
|
[health]
|
|
# Health check settings
|
|
# Liveness check interval (seconds)
|
|
liveness_interval_secs = 10
|
|
# Readiness check interval (seconds)
|
|
readiness_interval_secs = 5
|
|
# Nushell environment health check timeout (milliseconds)
|
|
nushell_health_timeout_ms = 1000
|
|
|
|
[api]
|
|
# API settings
|
|
# API version
|
|
version = "v1"
|
|
# Enable detailed error responses
|
|
detailed_errors = false
|
|
# Request timeout (seconds)
|
|
request_timeout_secs = 30
|
|
# Maximum request body size in MB
|
|
max_body_size_mb = 100
|
|
|
|
[operations]
|
|
# Operation registry settings
|
|
# Valida operation
|
|
valida_enabled = true
|
|
# Runtime detection operation
|
|
runtime_enabled = true
|
|
# Encrypt/decrypt operation
|
|
encrypt_enabled = true
|
|
# Init services operation
|
|
init_servs_enabled = true
|
|
# Audit operation
|
|
audit_enabled = true
|
|
|
|
[features]
|
|
# Feature flags
|
|
# Enable Nushell integration
|
|
nushell = true
|
|
# Enable persistent executor
|
|
nushell_persistent = true
|
|
# Enable file watching
|
|
watcher = true
|
|
# Enable cache system
|
|
cache = true
|
|
# Enable event bus
|
|
event_bus = true
|
|
# Enable health checks
|
|
health_checks = true
|