greentic-config
Enterprise configuration loader for Greentic hosts. This crate resolves configuration from defaults, user-level config, project config, environment variables, and CLI overrides with clear precedence and provenance tracking.
Features
- Loads canonical schema from
greentic-config-types(no secrets). - Precedence: CLI > env > project > user > defaults.
- Provenance tracking for every resolved field.
- Validation hooks for dev-only fields, path sanity, and unsafe combinations.
- Explain output (string/JSON) for operators.
Services and events mapping
- Services endpoints (e.g.,
services.events.url) live ingreentic-config-types; resolver applies precedence and exposes provenance. - Events knobs (
events.reconnect,events.backoff) get defaults (reconnect enabled, max_retries=50, backoff initial=250ms, max=30s, multiplier=2.0, jitter=true) and validation (offline + remote endpoint is rejected; backoff sanity enforced). - No secrets in config; route auth material via your secrets backend.
Status
- Schema and loader implemented; CLI binary behind the
clifeature (greentic-config show|explain|validate). - Defaults are non-secret and filesystem/network safe.