Skip to main content

Crate smooai_config

Crate smooai_config 

Source
Expand description

Smoo AI Configuration Management Library - Rust SDK.

Provides schema definition, JSON Schema generation, runtime config client, and local file/env-based configuration with caching.

Re-exports§

pub use bootstrap::bootstrap_fetch;
pub use bootstrap::BootstrapError;
pub use build::build_bundle;
pub use build::BuildBundleOptions;
pub use build::BuildBundleResult;
pub use build::BuildError;
pub use build::Classification;
pub use build::Classifier;
pub use client::ConfigClient;
pub use client::EvaluateFeatureFlagResponse;
pub use client::FeatureFlagEvaluationError;
pub use cloud_region::get_cloud_region;
pub use cloud_region::get_cloud_region_from_env;
pub use cloud_region::CloudRegionResult;
pub use config_manager::ConfigManager;
pub use container::config_health;
pub use container::init_container_config;
pub use container::ConfigBootstrapError;
pub use container::ConfigError;
pub use container::ConfigHealth;
pub use container::ConfigKeyUnresolvedError;
pub use container::ConfigTier as ContainerConfigTier;
pub use container::ContainerConfigHandle;
pub use container::InitContainerConfigOptions;
pub use container::Mode;
pub use container::SelectModeInputs;
pub use container::DEFAULT_CACHE_TTL;
pub use container::DEFAULT_TOKEN_REFRESH_BUFFER_SECONDS;
pub use container::select_mode;
pub use container::FeatureFlagAccessor;
pub use container::PublicConfigAccessor;
pub use container::SecretConfigAccessor;
pub use env_config::find_and_process_env_config;
pub use file_config::find_and_process_file_config;
pub use file_config::find_config_directory;
pub use local::LocalConfigManager;
pub use merge::merge_replace_arrays;
pub use runtime::build_config_runtime;
pub use runtime::read_baked_config;
pub use runtime::BakedConfig;
pub use runtime::RuntimeError;
pub use runtime::RuntimeOptions;
pub use token_provider::SharedTokenProvider;
pub use token_provider::TokenProvider;
pub use token_provider::TokenProviderError;
pub use utils::camel_to_upper_snake;
pub use utils::coerce_boolean;
pub use utils::SmooaiConfigError;
pub use utils::SmooaiConfigErrorKind;

Modules§

bootstrap
Lightweight cold-start config fetcher.
build
Deploy-time baker for smooai-config (Rust parity with TypeScript/Python).
client
Runtime configuration client for fetching values from the Smoo AI server.
cloud_region
Cloud provider and region detection from environment variables.
config_manager
Unified configuration manager merging file, remote API, and env config sources.
container
Container / runtime mode for smooai-config (SMOODEV-1494).
deferred
Deferred (computed) config value resolution.
env_config
Environment variable configuration loading.
eso_manifests
ESO (ExternalSecrets Operator) manifest generator — Rust parity port of the TypeScript src/eso-manifests (SMOODEV-1526, epic SMOODEV-1522).
eso_refresher
ESO bearer-token refresher core — Rust parity port of the TypeScript src/eso-refresher (SMOODEV-1526, epic SMOODEV-1522).
file_config
File-based configuration loading and merging.
local
Local configuration manager with lazy init and multi-tier TTL caching.
merge
Deep merge utility with array replacement.
runtime
Bake-aware runtime hydrator for smooai-config (Rust parity with TypeScript/Python).
schema
Configuration schema definition using serde.
schema_validator
Cross-language JSON Schema validation for the Smoo AI config SDK.
token_provider
OAuth2 client_credentials token provider for the runtime [ConfigClient].
utils
Utility functions for configuration management.