pub mod logging {
pub const DYN_LOG: &str = "DYN_LOG";
pub const DYN_LOGGING_CONFIG_PATH: &str = "DYN_LOGGING_CONFIG_PATH";
pub const DYN_LOGGING_JSONL: &str = "DYN_LOGGING_JSONL";
pub const DYN_SDK_DISABLE_ANSI_LOGGING: &str = "DYN_SDK_DISABLE_ANSI_LOGGING";
pub const DYN_LOG_USE_LOCAL_TZ: &str = "DYN_LOG_USE_LOCAL_TZ";
pub const DYN_LOGGING_SPAN_EVENTS: &str = "DYN_LOGGING_SPAN_EVENTS";
pub mod otlp {
pub const OTEL_EXPORT_ENABLED: &str = "OTEL_EXPORT_ENABLED";
pub const OTEL_EXPORTER_OTLP_TRACES_ENDPOINT: &str = "OTEL_EXPORTER_OTLP_TRACES_ENDPOINT";
pub const OTEL_SERVICE_NAME: &str = "OTEL_SERVICE_NAME";
}
}
pub mod runtime {
pub const DYN_RUNTIME_NUM_WORKER_THREADS: &str = "DYN_RUNTIME_NUM_WORKER_THREADS";
pub const DYN_RUNTIME_MAX_BLOCKING_THREADS: &str = "DYN_RUNTIME_MAX_BLOCKING_THREADS";
pub mod system {
pub const DYN_SYSTEM_ENABLED: &str = "DYN_SYSTEM_ENABLED";
pub const DYN_SYSTEM_HOST: &str = "DYN_SYSTEM_HOST";
pub const DYN_SYSTEM_PORT: &str = "DYN_SYSTEM_PORT";
pub const DYN_SYSTEM_USE_ENDPOINT_HEALTH_STATUS: &str =
"DYN_SYSTEM_USE_ENDPOINT_HEALTH_STATUS";
pub const DYN_SYSTEM_STARTING_HEALTH_STATUS: &str = "DYN_SYSTEM_STARTING_HEALTH_STATUS";
pub const DYN_SYSTEM_HEALTH_PATH: &str = "DYN_SYSTEM_HEALTH_PATH";
pub const DYN_SYSTEM_LIVE_PATH: &str = "DYN_SYSTEM_LIVE_PATH";
}
pub mod compute {
pub const PREFIX: &str = "DYN_COMPUTE_";
}
pub mod canary {
pub const DYN_CANARY_WAIT_TIME: &str = "DYN_CANARY_WAIT_TIME";
}
}
pub mod worker {
pub const DYN_WORKER_GRACEFUL_SHUTDOWN_TIMEOUT: &str = "DYN_WORKER_GRACEFUL_SHUTDOWN_TIMEOUT";
}
pub mod nats {
pub const NATS_SERVER: &str = "NATS_SERVER";
pub mod auth {
pub const NATS_AUTH_USERNAME: &str = "NATS_AUTH_USERNAME";
pub const NATS_AUTH_PASSWORD: &str = "NATS_AUTH_PASSWORD";
pub const NATS_AUTH_TOKEN: &str = "NATS_AUTH_TOKEN";
pub const NATS_AUTH_NKEY: &str = "NATS_AUTH_NKEY";
pub const NATS_AUTH_CREDENTIALS_FILE: &str = "NATS_AUTH_CREDENTIALS_FILE";
}
pub mod stream {
pub const DYN_NATS_STREAM_MAX_AGE: &str = "DYN_NATS_STREAM_MAX_AGE";
}
}
pub mod etcd {
pub const ETCD_ENDPOINTS: &str = "ETCD_ENDPOINTS";
pub mod auth {
pub const ETCD_AUTH_USERNAME: &str = "ETCD_AUTH_USERNAME";
pub const ETCD_AUTH_PASSWORD: &str = "ETCD_AUTH_PASSWORD";
pub const ETCD_AUTH_CA: &str = "ETCD_AUTH_CA";
pub const ETCD_AUTH_CLIENT_CERT: &str = "ETCD_AUTH_CLIENT_CERT";
pub const ETCD_AUTH_CLIENT_KEY: &str = "ETCD_AUTH_CLIENT_KEY";
}
}
pub mod kvbm {
pub const DYN_KVBM_METRICS: &str = "DYN_KVBM_METRICS";
pub const DYN_KVBM_METRICS_PORT: &str = "DYN_KVBM_METRICS_PORT";
pub const DYN_KVBM_ENABLE_RECORD: &str = "DYN_KVBM_ENABLE_RECORD";
pub const DYN_KVBM_DISABLE_DISK_OFFLOAD_FILTER: &str = "DYN_KVBM_DISABLE_DISK_OFFLOAD_FILTER";
pub mod cpu_cache {
pub const DYN_KVBM_CPU_CACHE_GB: &str = "DYN_KVBM_CPU_CACHE_GB";
pub const DYN_KVBM_CPU_CACHE_OVERRIDE_NUM_BLOCKS: &str =
"DYN_KVBM_CPU_CACHE_OVERRIDE_NUM_BLOCKS";
}
pub mod disk_cache {
pub const DYN_KVBM_DISK_CACHE_GB: &str = "DYN_KVBM_DISK_CACHE_GB";
pub const DYN_KVBM_DISK_CACHE_OVERRIDE_NUM_BLOCKS: &str =
"DYN_KVBM_DISK_CACHE_OVERRIDE_NUM_BLOCKS";
}
pub mod object_storage {
pub const DYN_KVBM_OBJECT_ENABLED: &str = "DYN_KVBM_OBJECT_ENABLED";
pub const DYN_KVBM_OBJECT_BUCKET: &str = "DYN_KVBM_OBJECT_BUCKET";
pub const DYN_KVBM_OBJECT_ENDPOINT: &str = "DYN_KVBM_OBJECT_ENDPOINT";
pub const DYN_KVBM_OBJECT_REGION: &str = "DYN_KVBM_OBJECT_REGION";
pub const DYN_KVBM_OBJECT_ACCESS_KEY: &str = "DYN_KVBM_OBJECT_ACCESS_KEY";
pub const DYN_KVBM_OBJECT_SECRET_KEY: &str = "DYN_KVBM_OBJECT_SECRET_KEY";
pub const DYN_KVBM_OBJECT_NUM_BLOCKS: &str = "DYN_KVBM_OBJECT_NUM_BLOCKS";
}
pub mod transfer {
pub const DYN_KVBM_TRANSFER_BATCH_SIZE: &str = "DYN_KVBM_TRANSFER_BATCH_SIZE";
}
pub mod leader {
pub const DYN_KVBM_LEADER_WORKER_INIT_TIMEOUT_SECS: &str =
"DYN_KVBM_LEADER_WORKER_INIT_TIMEOUT_SECS";
pub const DYN_KVBM_LEADER_ZMQ_HOST: &str = "DYN_KVBM_LEADER_ZMQ_HOST";
pub const DYN_KVBM_LEADER_ZMQ_PUB_PORT: &str = "DYN_KVBM_LEADER_ZMQ_PUB_PORT";
pub const DYN_KVBM_LEADER_ZMQ_ACK_PORT: &str = "DYN_KVBM_LEADER_ZMQ_ACK_PORT";
}
pub mod nixl {
pub const PREFIX: &str = "DYN_KVBM_NIXL_BACKEND_";
}
}
pub mod llm {
pub const DYN_HTTP_BODY_LIMIT_MB: &str = "DYN_HTTP_BODY_LIMIT_MB";
pub const DYN_HTTP_GRACEFUL_SHUTDOWN_TIMEOUT_SECS: &str =
"DYN_HTTP_GRACEFUL_SHUTDOWN_TIMEOUT_SECS";
pub const DYN_LORA_ENABLED: &str = "DYN_LORA_ENABLED";
pub const DYN_LORA_PATH: &str = "DYN_LORA_PATH";
pub const DYN_ENABLE_ANTHROPIC_API: &str = "DYN_ENABLE_ANTHROPIC_API";
pub mod metrics {
pub const DYN_METRICS_PREFIX: &str = "DYN_METRICS_PREFIX";
pub const HISTOGRAM_PREFIX: &str = "DYN_HISTOGRAM_";
}
}
pub mod model {
pub mod model_express {
pub const MODEL_EXPRESS_URL: &str = "MODEL_EXPRESS_URL";
pub const MODEL_EXPRESS_CACHE_PATH: &str = "MODEL_EXPRESS_CACHE_PATH";
}
pub mod huggingface {
pub const HF_TOKEN: &str = "HF_TOKEN";
pub const HF_HUB_CACHE: &str = "HF_HUB_CACHE";
pub const HF_HOME: &str = "HF_HOME";
pub const HF_HUB_OFFLINE: &str = "HF_HUB_OFFLINE";
}
}
pub mod event_plane {
pub const DYN_EVENT_PLANE: &str = "DYN_EVENT_PLANE";
pub const DYN_EVENT_PLANE_CODEC: &str = "DYN_EVENT_PLANE_CODEC";
}
pub mod zmq_broker {
pub const DYN_ZMQ_BROKER_URL: &str = "DYN_ZMQ_BROKER_URL";
pub const DYN_ZMQ_BROKER_ENABLED: &str = "DYN_ZMQ_BROKER_ENABLED";
pub const ZMQ_BROKER_XSUB_BIND: &str = "ZMQ_BROKER_XSUB_BIND";
pub const ZMQ_BROKER_XPUB_BIND: &str = "ZMQ_BROKER_XPUB_BIND";
pub const ZMQ_BROKER_NAMESPACE: &str = "ZMQ_BROKER_NAMESPACE";
}
pub mod cuda {
pub const DYN_FATBIN_PATH: &str = "DYN_FATBIN_PATH";
}
pub mod build {
pub const OUT_DIR: &str = "OUT_DIR";
}
pub mod mocker {
pub const DYN_MOCKER_KV_CACHE_TRACE: &str = "DYN_MOCKER_KV_CACHE_TRACE";
pub const DYN_MOCKER_SYNC_DIRECT: &str = "DYN_MOCKER_SYNC_DIRECT";
}
pub mod testing {
pub const DYN_QUEUED_UP_PROCESSING: &str = "DYN_QUEUED_UP_PROCESSING";
pub const DYN_SOAK_RUN_DURATION: &str = "DYN_SOAK_RUN_DURATION";
pub const DYN_SOAK_BATCH_LOAD: &str = "DYN_SOAK_BATCH_LOAD";
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_no_duplicate_env_var_names() {
use std::collections::HashSet;
let mut seen = HashSet::new();
let vars = [
logging::DYN_LOG,
logging::DYN_LOGGING_CONFIG_PATH,
logging::DYN_LOGGING_JSONL,
logging::DYN_SDK_DISABLE_ANSI_LOGGING,
logging::DYN_LOG_USE_LOCAL_TZ,
logging::DYN_LOGGING_SPAN_EVENTS,
logging::otlp::OTEL_EXPORT_ENABLED,
logging::otlp::OTEL_EXPORTER_OTLP_TRACES_ENDPOINT,
logging::otlp::OTEL_SERVICE_NAME,
runtime::DYN_RUNTIME_NUM_WORKER_THREADS,
runtime::DYN_RUNTIME_MAX_BLOCKING_THREADS,
runtime::system::DYN_SYSTEM_ENABLED,
runtime::system::DYN_SYSTEM_HOST,
runtime::system::DYN_SYSTEM_PORT,
runtime::system::DYN_SYSTEM_USE_ENDPOINT_HEALTH_STATUS,
runtime::system::DYN_SYSTEM_STARTING_HEALTH_STATUS,
runtime::system::DYN_SYSTEM_HEALTH_PATH,
runtime::system::DYN_SYSTEM_LIVE_PATH,
runtime::canary::DYN_CANARY_WAIT_TIME,
worker::DYN_WORKER_GRACEFUL_SHUTDOWN_TIMEOUT,
nats::NATS_SERVER,
nats::auth::NATS_AUTH_USERNAME,
nats::auth::NATS_AUTH_PASSWORD,
nats::auth::NATS_AUTH_TOKEN,
nats::auth::NATS_AUTH_NKEY,
nats::auth::NATS_AUTH_CREDENTIALS_FILE,
nats::stream::DYN_NATS_STREAM_MAX_AGE,
etcd::ETCD_ENDPOINTS,
etcd::auth::ETCD_AUTH_USERNAME,
etcd::auth::ETCD_AUTH_PASSWORD,
etcd::auth::ETCD_AUTH_CA,
etcd::auth::ETCD_AUTH_CLIENT_CERT,
etcd::auth::ETCD_AUTH_CLIENT_KEY,
kvbm::DYN_KVBM_METRICS,
kvbm::DYN_KVBM_METRICS_PORT,
kvbm::DYN_KVBM_ENABLE_RECORD,
kvbm::DYN_KVBM_DISABLE_DISK_OFFLOAD_FILTER,
kvbm::cpu_cache::DYN_KVBM_CPU_CACHE_GB,
kvbm::cpu_cache::DYN_KVBM_CPU_CACHE_OVERRIDE_NUM_BLOCKS,
kvbm::disk_cache::DYN_KVBM_DISK_CACHE_GB,
kvbm::disk_cache::DYN_KVBM_DISK_CACHE_OVERRIDE_NUM_BLOCKS,
kvbm::leader::DYN_KVBM_LEADER_WORKER_INIT_TIMEOUT_SECS,
kvbm::leader::DYN_KVBM_LEADER_ZMQ_HOST,
kvbm::leader::DYN_KVBM_LEADER_ZMQ_PUB_PORT,
kvbm::leader::DYN_KVBM_LEADER_ZMQ_ACK_PORT,
llm::DYN_HTTP_BODY_LIMIT_MB,
llm::DYN_LORA_ENABLED,
llm::DYN_LORA_PATH,
llm::DYN_ENABLE_ANTHROPIC_API,
llm::metrics::DYN_METRICS_PREFIX,
model::model_express::MODEL_EXPRESS_URL,
model::model_express::MODEL_EXPRESS_CACHE_PATH,
model::huggingface::HF_TOKEN,
model::huggingface::HF_HUB_CACHE,
model::huggingface::HF_HOME,
model::huggingface::HF_HUB_OFFLINE,
event_plane::DYN_EVENT_PLANE,
event_plane::DYN_EVENT_PLANE_CODEC,
zmq_broker::DYN_ZMQ_BROKER_URL,
zmq_broker::DYN_ZMQ_BROKER_ENABLED,
zmq_broker::ZMQ_BROKER_XSUB_BIND,
zmq_broker::ZMQ_BROKER_XPUB_BIND,
zmq_broker::ZMQ_BROKER_NAMESPACE,
cuda::DYN_FATBIN_PATH,
build::OUT_DIR,
mocker::DYN_MOCKER_KV_CACHE_TRACE,
mocker::DYN_MOCKER_SYNC_DIRECT,
testing::DYN_QUEUED_UP_PROCESSING,
testing::DYN_SOAK_RUN_DURATION,
testing::DYN_SOAK_BATCH_LOAD,
];
for var in &vars {
if !seen.insert(var) {
panic!("Duplicate environment variable name: {}", var);
}
}
}
#[test]
fn test_naming_conventions() {
assert!(runtime::DYN_RUNTIME_NUM_WORKER_THREADS.starts_with("DYN_"));
assert!(runtime::system::DYN_SYSTEM_ENABLED.starts_with("DYN_"));
assert!(kvbm::DYN_KVBM_METRICS.starts_with("DYN_"));
assert!(worker::DYN_WORKER_GRACEFUL_SHUTDOWN_TIMEOUT.starts_with("DYN_"));
assert!(nats::NATS_SERVER.starts_with("NATS_"));
assert!(nats::auth::NATS_AUTH_USERNAME.starts_with("NATS_AUTH_"));
assert!(etcd::ETCD_ENDPOINTS.starts_with("ETCD_"));
assert!(etcd::auth::ETCD_AUTH_USERNAME.starts_with("ETCD_AUTH_"));
assert!(logging::otlp::OTEL_EXPORT_ENABLED.starts_with("OTEL_"));
assert!(logging::otlp::OTEL_SERVICE_NAME.starts_with("OTEL_"));
}
}