K8S code-generator
作者:互联网
一、前言:如何操作自定义资源
client-go为每种K8S内置资源提供对应的clientset和informer。那么如果我们要监听和操作自定义资源对象,应该如何做呢?这里我们有两种方式:
方式一:使用client-go提供的dynamicClient来操作自定义资源对象,当然也可以使用RESTClient实现
方式二:使用code-generator来帮助我们生成我们需要的代码,这样我们就可以像使用client-go为内置K8S资源对象提供的方式监听和操作自定义资源
二、code-generator 生成器
代码 code-generator/cmd 目录下,包括如下:
client-gen
conversinon-gen
deepcopy-gen
go-go-protobuf
import-boss
informer-gen
lister-gen
openapi-gen
register-gen
set-gen
三. 创建自定义 CRD
其中 pkg/apis是固定的
apps是groupname,比如 apps.k8s.io/v1
v1 是 version
doc.go types.go register.go 都是自己写的,或者使用 operator-sdk 生成,在填充
四、常用code-generator标记
deep-copy标记
标签:code,自定义,generator,client,go,K8S 来源: https://www.cnblogs.com/wuchangblog/p/16698490.html