kubernetes 开发:代码生成工具

目录

说明

kubernetes 项目中一些通用的代码,比如资源的 DeepCopy 函数、ClientSet、Informer 等是通过脚本自动生成的,相关脚本是 hack/update-codegen.sh。kubernestes 的 Makefile 以及 hack 中脚本内容比较繁杂,这里直接跳过,只需要知道他们最终使用 github.com/kubernetes/code-generator 中的命令生成代码。

code-generator

code-generator 实现代码位于 kubernetes/staging/src/k8s.io/code-generator 中,跟随 kubernetes 的版本发布被同步到独立的 repo github.com/kubernetes/code-generator。

code-generator 提供了多个命令,分别用于生成不同代码:

code-generator cmds

gengo

code-generator 中一部分比较通用的代码生成是通过 gengo 实现的。gengo 中给出了几个代码生成示范:

gengo exmaple

参考

  1. 李佶澳的博客
  2. github.com/kubernetes/code-generator
  3. github.com/kubernetes/gengo
  4. hack/update-codegen.sh

推荐阅读

Copyright @2011-2019 All rights reserved. 转载请添加原文连接,合作请加微信lijiaocn或者发送邮件: [email protected],备注网站合作

友情链接:  Some Online Tools Develop by Me  系统软件  程序语言  运营经验  水库文集  网络课程  微信网文