[package]
name = "kubert"
version = "0.5.0"
edition = "2021"
license = "Apache-2.0"
description = "Kubernetes runtime helpers. Based on kube-rs."
readme = "../README.md"
repository = "https://github.com/olix0r/kubert"
rust-version = "1.56.1"
keywords = ["kubernetes", "client", "runtime", "server"]
[features]
admin = ["futures-util", "hyper/http1", "hyper/runtime", "hyper/server", "tokio/sync", "tracing"]
client = ["kube-client", "thiserror"]
errors = ["futures-core", "futures-util", "pin-project-lite", "tokio/time", "tracing"]
index = [
"ahash",
"futures-core",
"futures-util",
"kube-core",
"kube-runtime",
"parking_lot",
"tracing",
]
initialized = ["futures-core", "futures-util", "pin-project-lite", "tokio/sync"]
log = ["thiserror", "tracing", "tracing-subscriber"]
requeue = ["futures-core", "tokio/macros", "tokio/sync", "tokio-util/time", "tracing"]
runtime = [
"admin",
"client",
"errors",
"initialized",
"kube-core",
"kube-runtime",
"log",
"serde",
"shutdown",
"thiserror",
"tracing",
]
server = [
"drain",
"hyper/http1",
"hyper/http2",
"hyper/runtime",
"hyper/server",
"rustls-pemfile",
"thiserror",
"tokio/fs",
"tokio/macros",
"tokio/net",
"tokio/rt",
"tokio-rustls",
"tower-service",
"tracing",
]
shutdown = [
"drain",
"futures-core",
"tokio/macros",
"tokio/signal",
"thiserror",
"tracing",
]
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
features = [
"admin",
"client",
"errors",
"initialized",
"log",
"requeue",
"runtime",
"server",
"shutdown",
"k8s-openapi/v1_23",
]
[dependencies]
ahash = { version = "0.7", optional = true }
drain = { version = "0.1.1", optional = true, default-features = false }
futures-core = { version = "0.3", optional = true, default-features = false }
futures-util = { version = "0.3", optional = true, default-features = false }
hyper = { version = "0.14.17", optional = true, default-features = false }
parking_lot = { version = "0.12", optional = true }
pin-project-lite = { version = "0.2", optional = true }
rustls-pemfile = { version = "0.3.0", optional = true }
thiserror = { version = "1.0.30", optional = true }
serde = { version = "1", optional = true }
tokio = { version = "1.17.0", optional = false, default-features = false }
tokio-util = { version = "0.7", optional = true, default-features = false }
tokio-rustls = { version = "0.23.2", optional = true, default-features = false }
tower-service = { version = "0.3.1", optional = true }
tracing = { version = "0.1.31", optional = true }
[dependencies.clap]
version = "3.1.0"
optional = true
default-features = false
features = ["derive", "std"]
[dependencies.k8s-openapi]
version = "0.14"
optional = true
default-features = false
[dependencies.kube-client]
version = "0.70"
optional = true
default-features = false
features = ["client", "config"]
[dependencies.kube-core]
version = "0.70"
optional = true
default-features = false
[dependencies.kube-runtime]
version = "0.70"
optional = true
default-features = false
[dependencies.tracing-subscriber]
version = "0.3.9"
optional = true
default-features = false
features = [
"env-filter",
"fmt",
"json",
"smallvec",
"tracing-log",
]
[dev-dependencies]
kube = { version = "0.70", default-features = false, features = ["runtime"] }
k8s-openapi = { version = "0.14.0", default-features = false, features = ["v1_23"] }
tokio-stream = "0.1"
tokio-test = "0.4"
tracing-subscriber = { version = "0.3", features = ["ansi"] }
[dev-dependencies.tokio]
version = "1.17"
default-features = false
features = ["macros", "test-util"]