{"repo":"kube-rs/kopium","free":true,"listed":false,"github":"https://github.com/kube-rs/kopium","clone":"git clone https://github.com/kube-rs/kopium.git","description":"Kubernetes OPenapI UnMangler","language":"Rust","stars":167,"topics":["crd","generator","openapi"],"license":"Apache-2.0","category":"api-integrations-sdks","readme_excerpt":"kopium K ubernetes op enap i u n m angler. Generates Rust data structs from Kubernetes customresourcedefinitions and their embedded openapi schemas. [!NOTE] Compatible with almost all catalogued CRDs. If a CRD does not work, please raise an issue! Requires stable CustomResourceDefinition/v1 schemas (Kubernetes =1.16) following the standard spec/status model. Features - Instantly queryable : generated type optionally implements kube::CustomResource to provide api integration with kube - Rust doc comments : optionally extracted from description values in schema - Safe case conversion : generated types uses rust standard casing with occasional serde rename attributes - Usable locally and in CI : Can read crds by name in cluster via mycrd.group.io or from file via -f crd.yaml Installation Grab a prebuilt directly / via binstall, or install from crates.io: Usage If you have a crd installed in your cluster, pass a crd name accessible from your KUBECONFIG : Or pass a file/stdin via -f : Output Usage with kube Add the generated file (e.g. output from above in prometheusrule.rs ) to your library, and import (at least) the special root type: Note that you will need to depend on kube , along with k8s-openapi and schemars at semver compatible versions with the latest kube release (which can be seen in the last release cargo.toml for kube). E.g. with kube 1: Autocomplete Autocompletion for most shells available via kopium completions : Testing Unit tests and running kopium from a file do ","default_branch":null,"files":null,"tree":[],"storefront":"/r/kube-rs","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/kube-rs/kopium/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}