如此处所述,这是在 kubernetes e2e 测试中使用的 webhook 服务器的参考实现。在main
函数中,定义了许多端点来处理不同的突变请求。但是,没有关于何时调用哪个端点的明确文档。
那么,我们如何知道何时调用了哪个端点呢?
我看到您正在尝试了解变异 webhook 的执行顺序是什么。
我在 kubernetes repo 中找到了这段代码。基于此,您可以看到这些是按 webhook 的名称排序的,具有确定的顺序。
变异 admissions 插件(包括 webhook)的单一排序并不适用于所有情况,因此请查看admission webhook 提案中的mutating plugin ordering部分以了解其处理方式。
另请注意,没有“仅 pod 端点”或“为 pod 调用的端点”。假设你有你的 webhook 服务器并且想要改变 pod,而你的服务器只有一个端点:/
. 如果你想用它来改变 pod,你需要在rules
. 因此,只要有要创建的 pod,设置rules[].resources: ["pods"]
并在您的 webhook 配置中都会运行您的 mutating webhook。rules[].operations: ["CREATE"]
让我知道它有帮助。