Skip to content

Features#

All public features are exposed through kube in kube's Cargo.toml.

Stable Features#

Feature Enables Default Significant Inclusions
config Config yes kube-client partial
client Client + Api yes kube-client, hyper, tower
runtime Controller + watcher no kube-runtime
derive CustomResource no kube-derive, syn, quote
openssl-tls tls via openssl no openssl, hyper-openssl
rustls-tls tls via rustls yes rustls, hyper-rustls
aws-lc-rs rustls via aws-lc-rs no aws-lc-rs
ws Execute, Attach, Portforward no tokio-tungstenite
gzip gzip compressed transport no tower-http feature
jsonpatch Patch using jsonpatch no json_patch
admission admission module no json_patch
socks5 local cluster socks5 proxying no hyper-socks2
http-proxy local cluster http proxying no hyper-http-proxy
oauth local cluster oauth for GCP no tame-oauth
oidc local cluster oidc auth no none
webpki-roots Mozilla's root certificates no webpki-roots

Client dependencies

Most of these features depend on having the client feature (and thus the config feature) enabled as they would not be much use without them.

--no-default-features

If you turn off all default features (say, to change tls stacks), you also turn off the normal client default feature. Without default features you get a crate roughly equivalent to kube-core.

Unstable Features#

  • unstable-runtime for stream sharing and controller streams interface tracked in #1080
  • unstable-client for client exts tracked in #1032
  • kubelet-debug for kubelet debug api access - untracked