[package]
name = "sonda-server"
version = "1.1.0"
edition.workspace = true
authors.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
keywords.workspace = true
categories = ["web-programming::http-server", "development-tools::testing"]
description = "HTTP control plane for Sonda — synthetic telemetry generator"
readme = "../README.md"

[features]
default = ["config", "http"]
config = ["sonda-core/config"]
http = ["sonda-core/http"]
remote-write = ["sonda-core/remote-write"]
kafka = ["sonda-core/kafka"]
otlp = ["sonda-core/otlp"]

[[bin]]
name = "sonda-server"
path = "src/main.rs"

[dependencies]
sonda-core = { workspace = true }
axum = "0.8"
tokio = { version = "1", features = ["full"] }
serde = { workspace = true }
serde_json = { workspace = true }
serde_yaml_ng = { workspace = true }
anyhow = { workspace = true }
clap = { workspace = true, features = ["env"] }
tower-http = { version = "0.6", features = ["cors", "trace"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
uuid = { version = "1", features = ["v4"] }
subtle = "2"

[dev-dependencies]
tower = "0.5"
http-body-util = "0.1"
hyper = "1"
reqwest = { version = "0.13", default-features = false, features = ["blocking", "json", "rustls"] }
libc = "0.2"
