K8s-client-go:源码结构

目录结构 含义
.github pull请求的模版
applyconfigurations applyconfiguration提供了构造服务区应用请求的应用配置的类型安全的go
discovery 提供DiscoverClient发现客户端
dynamic 提供DynamicClient动态客户端
examples 包含client-go的各种用例和功能的演示
informers 每种K8s的各种资源的informer实现
kubernetes 提供ClientSet客户端
kubernetes_test 提供ClientSet客户端的测试
listers 为每一个K8s资源提供Listers功能,该功能对Get和List提供制度的缓存数据
metadata 包含关于client-go的元数据信息
pkg 客户端以及版本的包
plugin/pkg/client/auth 认证插件包auth
rest 提供RestClient客户端,对K8s API Server执行Rest API操作
restmapper 映射器的一些方法
scale 提供scaleclient客户端,用于扩容和缩容deployment,replicasent,replication controller等资源
testing 测试文件
thrid_party/forked/golang 第三方库
tools 常用工具,比如shareinformer、Reflector、DealtFIFO以及Indexers。提供Client查询和缓存机制,减杀向kube-apisever请求
transport 提供安全的TCP连接,支持HTTPSTREAM。某些操作需要客户端和容器之间传输二进制流,例如exec,attach等,又内部的spdy包提供支持
utils 提供常用方法,比如workqueue工作队列,certificate证书管理等