21 次重大发布

0.22.0 2024 年 5 月 4 日
0.21.1 2024 年 2 月 17 日
0.21.0 2024 年 1 月 20 日
0.20.0 2023 年 9 月 7 日
0.2.0 2018 年 7 月 7 日

14开发工具

Download history 81701/week @ 2024-05-03 88416/week @ 2024-05-10 97052/week @ 2024-05-17 83823/week @ 2024-05-24 88470/week @ 2024-05-31 97503/week @ 2024-06-07 96011/week @ 2024-06-14 99178/week @ 2024-06-21 93042/week @ 2024-06-28 93216/week @ 2024-07-05 88953/week @ 2024-07-12 95941/week @ 2024-07-19 93678/week @ 2024-07-26 112788/week @ 2024-08-02 185591/week @ 2024-08-09 169736/week @ 2024-08-16

每月 579,757 次下载
用于 187 个 Crates(163 个直接使用)

Apache-2.0

42MB
657K SLoC

本包包含 Kubernetes 客户端 API 中的资源类型定义,这些定义是从 Kubernetes OpenAPI 规范自动生成的。

crates.io

文档

变更日志

此包不是使用 Swagger 或 OpenAPI Generator 直接生成的,因为由 通用客户端生成器 生成的客户端。这给此包带来了一些重要的优势。

绕过上游 OpenAPI 规范中的错误

上游 OpenAPI 规范不是手工编写的;它本身是从 API 服务器的 Go 代码生成的。因此,当尝试将 Go 类型的表示转换为 OpenAPI 时,规范会犯错误,例如不正确地表示用于 CRD 验证的 JSON 类型,以及不正确地表示 WatchEvent 内部的对象类型。从规范天真地生成的客户端继承了所有这些错误,并且很难在“后期”修复这些错误。

由于此包使用自定义代码生成器,因此它能够绕过这些错误并生成正确的绑定。请参阅此处修复列表 这里 和每个 Kubernetes 版本应用的修复分解 这里

支持更多版本的 Kubernetes

官方客户端通常只支持 Kubernetes 的三个最新版本。此包支持更多。

如上所述,上游 OpenAPI 规范中包含错误。当上游修复这些错误时,它通常不会将这些修复回滚到旧版本(甚至不是到 支持的 旧版本)。此包如果适用,则将这些修复回滚。

许可

k8s-openapi

https://github.com/Arnavion/k8s-openapi

Copyright 2018 Arnav Singh

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

这些绑定生成的 OpenAPI 规范来源于 Kubernetes 仓库 https://github.com/kubernetes/kubernetes,该仓库也使用 Apache-2.0 许可证。

依赖