An Elixir client for the Kubernetes API, generated from OpenAPI specifications for comprehensive coverage.
Kazan is an Elixir library that provides a client for the Kubernetes API. It automatically generates Elixir modules and structs from Kubernetes' OpenAPI specifications, allowing developers to interact with Kubernetes clusters programmatically. It solves the problem of manually maintaining API bindings and ensures up-to-date coverage of Kubernetes features.
Elixir developers who need to automate, manage, or monitor Kubernetes clusters from within their Elixir applications, such as those building DevOps tools, deployment pipelines, or cluster operators.
Developers choose Kazan because it offers comprehensive, auto-generated API coverage that stays in sync with Kubernetes updates, provides an idiomatic Elixir interface with typespecs, and simplifies authentication and configuration through kubeconfig files and in-cluster setups.
Kubernetes API client for Elixir
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Derives functions and structs directly from Kubernetes OpenAPI specs, ensuring broad and up-to-date API support with minimal manual maintenance.
Supports client certificates, tokens, auth providers, and seamless loading from kubeconfig files or in-cluster service accounts, as highlighted in the configuration section.
Enables monitoring of Kubernetes resource changes through watch requests, useful for event-driven applications like operators or monitoring tools.
Includes Elixir typespecs for all generated functions and structs, aiding development with better tooling, though dialyzer warnings are noted in the README.
Lacks support for advanced patching methods, other authentication forms, and request validation, as explicitly listed in the 'Not Implemented' section of the README.
The library is pre-1.0 and not thoroughly tested against the actual Kubernetes API, increasing the risk of bugs and breaking changes.
Typespecs cause numerous dialyzer warnings, which can clutter output and reduce confidence in type safety during static analysis.