From 53b896035940bea8b349f241ce0616533617bba3 Mon Sep 17 00:00:00 2001 From: Chao Xu Date: Fri, 17 Nov 2017 14:16:37 -0800 Subject: [PATCH] move the MutatingAdmissionWebhook to the last in the mutating amdission plugin chain. Kubernetes-commit: 8e8e32fa05f02331f724930933dfa34be995247c --- pkg/server/options/admission.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pkg/server/options/admission.go b/pkg/server/options/admission.go index a0b1aa983..6232567f7 100644 --- a/pkg/server/options/admission.go +++ b/pkg/server/options/admission.go @@ -59,10 +59,14 @@ type AdmissionOptions struct { // Servers that do care can overwrite/append that field after creation. func NewAdmissionOptions() *AdmissionOptions { options := &AdmissionOptions{ - Plugins: admission.NewPlugins(), - PluginNames: []string{}, - RecommendedPluginOrder: []string{mutatingwebhook.PluginName, lifecycle.PluginName, initialization.PluginName, validatingwebhook.PluginName}, - DefaultOffPlugins: []string{mutatingwebhook.PluginName, initialization.PluginName, validatingwebhook.PluginName}, + Plugins: admission.NewPlugins(), + PluginNames: []string{}, + // This list is mix of mutating admission plugins and validating + // admission plugins. The apiserver always runs the validating ones + // after all the mutating ones, so their relative order in this list + // doesn't matter. + RecommendedPluginOrder: []string{lifecycle.PluginName, initialization.PluginName, mutatingwebhook.PluginName, validatingwebhook.PluginName}, + DefaultOffPlugins: []string{initialization.PluginName, mutatingwebhook.PluginName, validatingwebhook.PluginName}, } apiserverapi.AddToScheme(options.Plugins.ConfigScheme) apiserverapiv1alpha1.AddToScheme(options.Plugins.ConfigScheme)