tvl-depot/tvix/nar-bridge/Cargo.toml
Florian Klink 30b631ea72 test(tvix/nar-bridge): start testing handlers
We currently only had some integration tests (as part of tvix-boot)
testing nar-bridge functionality as a smoketest, but with axum-test we
can test individual handlers and peek at the store afterwards, which is
much more granular.

This adds tests for the nar-specific request handlers.

Change-Id: I7f2345df89ac43b9b372ecc66f696e95e2fcad18
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12916
Tested-by: BuildkiteCI
Reviewed-by: raitobezarius <tvl@lahfa.xyz>
Autosubmit: flokli <flokli@flokli.de>
2024-12-27 12:03:06 +00:00

54 lines
1.8 KiB
TOML

[package]
name = "nar-bridge"
version = "0.1.0"
edition = "2021"
[dependencies]
axum = { workspace = true, features = ["http2"] }
axum-extra = { workspace = true }
axum-range = { workspace = true }
tower = { workspace = true }
tower-http = { workspace = true, features = ["compression-zstd", "trace"] }
bytes = { workspace = true }
clap = { workspace = true, features = ["derive", "env"] }
data-encoding = { workspace = true }
futures = { workspace = true }
itertools = { workspace = true }
prost = { workspace = true }
nix-compat = { path = "../nix-compat", features = ["async"] }
opentelemetry = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true }
tokio-listener = { workspace = true, features = ["axum07", "clap", "multi-listener", "sd_listen"] }
tokio-util = { workspace = true, features = ["io", "io-util", "compat"] }
tonic = { workspace = true, features = ["tls", "tls-roots"] }
tower-otel-http-metrics = { workspace = true, features = ["axum"], optional = true }
tvix-castore = { path = "../castore" }
tvix-store = { path = "../store" }
tvix-tracing = { path = "../tracing", features = ["tonic", "axum"] }
tracing = { workspace = true }
tracing-subscriber = { workspace = true }
tracing-test = { workspace = true }
url = { workspace = true }
serde = { workspace = true, features = ["derive"] }
lru = { workspace = true }
parking_lot = { workspace = true }
mimalloc = { workspace = true }
[build-dependencies]
prost-build = { workspace = true }
tonic-build = { workspace = true }
[features]
default = ["otlp"]
otlp = ["tvix-tracing/otlp", "tower-otel-http-metrics"]
xp-store-composition-cli = ["tvix-store/xp-composition-cli"]
[dev-dependencies]
axum-test = "16.4.0"
hex-literal = { workspace = true }
rstest = { workspace = true }
sha2.workspace = true
[lints]
workspace = true