kube_core/
lib.rs

1//! Types and traits necessary for interacting with the Kubernetes API
2//!
3//! This crate provides the minimal apimachinery necessary to make requests to the kubernetes API.
4//!
5//! It does not export export a client, but it also has almost no dependencies.
6//!
7//! Everything in this crate is re-exported from [`kube`](https://crates.io/crates/kube)
8//! (even with zero features) under [`kube::core`]((https://docs.rs/kube/*/kube/core/index.html)).
9#![cfg_attr(docsrs, feature(doc_cfg))]
10
11#[cfg_attr(docsrs, doc(cfg(feature = "admission")))]
12#[cfg(feature = "admission")]
13pub mod admission;
14
15pub mod conversion;
16
17pub mod discovery;
18
19pub mod duration;
20pub use duration::Duration;
21
22pub mod dynamic;
23pub use dynamic::{ApiResource, DynamicObject};
24
25pub mod crd;
26pub use crd::CustomResourceExt;
27
28pub mod cel;
29pub use cel::{Message, Reason, Rule};
30
31#[cfg(feature = "schema")]
32pub use cel::{merge_properties, validate, validate_property};
33
34pub mod gvk;
35pub use gvk::{GroupVersion, GroupVersionKind, GroupVersionResource};
36
37pub mod metadata;
38pub use metadata::{ListMeta, ObjectMeta, PartialObjectMeta, PartialObjectMetaExt, TypeMeta};
39
40pub mod labels;
41
42#[cfg(feature = "kubelet-debug")] pub mod kubelet_debug;
43
44pub mod object;
45pub use object::{NotUsed, Object, ObjectList};
46
47pub mod params;
48
49pub mod request;
50pub use request::Request;
51
52mod resource;
53pub use resource::{
54    api_version_from_group_version, ClusterResourceScope, DynamicResourceScope, NamespaceResourceScope,
55    Resource, ResourceExt, ResourceScope, SubResourceScope,
56};
57
58pub mod response;
59pub use response::Status;
60
61pub use labels::{Expression, ParseExpressionError, Selector, SelectorExt};
62
63#[cfg_attr(docsrs, doc(cfg(feature = "schema")))]
64#[cfg(feature = "schema")]
65pub mod schema;
66
67pub mod subresource;
68
69pub mod util;
70
71pub mod watch;
72pub use watch::WatchEvent;
73
74mod error;
75pub use error::ErrorResponse;
76
77mod version;
78pub use version::Version;
79
80pub mod error_boundary;
81pub use error_boundary::DeserializeGuard;