安装 k8s 的 code generator 工具包,可以按照以下步骤进行:
- 下载 Kubernetes 源码
$ git clone https://github.com/kubernetes/kubernetes.git
- 切换到源码目录,并进入
hack
目录
$ cd kubernetes/
$ cd hack/
- 执行
./setup-go-env.sh
脚本来设置 Go 环境变量
$ ./setup-go-env.sh
- 执行
./verify-all-codegen.sh
脚本来检查是否需要安装 code generator 工具包
$ ./verify-all-codegen.sh
- 如果提示缺少某些依赖,则执行以下命令安装依赖
# 安装 protobuf 工具包
$ go get -u github.com/golang/protobuf/{proto,protoc-gen-go}
# 安装 deepcopy-gen 工具包
$ go get -d k8s.io/code-generator/cmd/deepcopy-gen && \
go install k8s.io/code-generator/cmd/deepcopy-gen
# 安装 defaulter-gen 工具包
$ go get -d k8s.io/code-generator/cmd/defaulter-gen && \
go install k8s.io/code-generator/cmd/defaulter-gen
# 安装 conversion-gen 工具包
$ go get -d k8s.io/code-generator/cmd/conversion-gen && \
go install k8s.io/code-generator/cmd/conversion-gen
# 安装 client-gen 工具包
$ go get -d k8s.io/client-go/... && \
go install k8s.io/client-go/...
- 再次执行
./verify-all-codegen.sh
脚本来检查是否安装成功
$ ./verify-all-codegen.sh
如果输出 Found all generators.
则说明 code generator 工具包安装成功。