Skip to content

LugaLee/goadmission

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

goadmission

一个用于快速开发 Kubernetes 动态准入控制的脚手架.

一、简介

goadmission 是一个开发 Kubernetes 动态准入控制的脚手架, goadmission 集成了以下组件:

  • zap 日志组件提供高性能的日志处理以及定制化
  • cobra 提供友好的终端命令行解析处理
  • json-iterator 提供高性能的 json 序列化与反序列化
  • gorilla/mux 提供 HTTP 路由处理

二、如何使用

克隆本项目到本地, 在 adfunc 添加新的准入控制 WebHook 即可, 文件命名请尽量保持一致(func_*.go); 原有的准入控制函数如果不需要可以直接删除, 本脚手架会自动加载通过 init 方法注册的准入控制到全局 HTTP 路由.所有准入控制的实际 HTTP 路由都会增加对应类型前缀, 比如准入控制路由路径为 /disable-service-links, 实际 HTTP 路由路径为 /mutating/disable-service-links.

如需要使用默认的自动编译脚本, 请先安装 Task 工具.

三、补充说明

如果想要增加非准入控制 WebHook 的 HTTP 路由, 请在 route 下新建文件, 使用方式与 adfunc 类似. 不要改动 main.go 中的初始化方法顺序, 否则可能导致准入控制路由无法正常加载.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 95.4%
  • Dockerfile 2.9%
  • Shell 1.7%