mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-13 22:05:59 +00:00
Improve naming and code comments
This commit is contained in:
parent
28b6c90696
commit
0695853a30
@ -21,7 +21,7 @@ import (
|
|||||||
"sort"
|
"sort"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
"k8s.io/api/admissionregistration/v1"
|
v1 "k8s.io/api/admissionregistration/v1"
|
||||||
"k8s.io/apimachinery/pkg/labels"
|
"k8s.io/apimachinery/pkg/labels"
|
||||||
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
|
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
|
||||||
"k8s.io/apiserver/pkg/admission/plugin/webhook"
|
"k8s.io/apiserver/pkg/admission/plugin/webhook"
|
||||||
@ -106,10 +106,15 @@ func (m *mutatingWebhookConfigurationManager) getConfiguration() ([]webhook.Webh
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return []webhook.WebhookAccessor{}, err
|
return []webhook.WebhookAccessor{}, err
|
||||||
}
|
}
|
||||||
return m.smartReloadMutatingWebhookConfigurations(configurations), nil
|
return m.getMutatingWebhookConfigurations(configurations), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *mutatingWebhookConfigurationManager) smartReloadMutatingWebhookConfigurations(configurations []*v1.MutatingWebhookConfiguration) []webhook.WebhookAccessor {
|
// getMutatingWebhookConfigurations returns the webhook accessors for a given list of
|
||||||
|
// mutating webhook configurations.
|
||||||
|
//
|
||||||
|
// This function will, first, try to load the webhook accessors from the cache and avoid
|
||||||
|
// recreating them, which can be expessive (requiring CEL expression recompilation).
|
||||||
|
func (m *mutatingWebhookConfigurationManager) getMutatingWebhookConfigurations(configurations []*v1.MutatingWebhookConfiguration) []webhook.WebhookAccessor {
|
||||||
// The internal order of webhooks for each configuration is provided by the user
|
// The internal order of webhooks for each configuration is provided by the user
|
||||||
// but configurations themselves can be in any order. As we are going to run these
|
// but configurations themselves can be in any order. As we are going to run these
|
||||||
// webhooks in serial, they are sorted here to have a deterministic order.
|
// webhooks in serial, they are sorted here to have a deterministic order.
|
||||||
|
@ -118,8 +118,8 @@ func TestGetMutatingWebhookConfigSmartReload(t *testing.T) {
|
|||||||
name string
|
name string
|
||||||
args args
|
args args
|
||||||
numberOfCreations int
|
numberOfCreations int
|
||||||
// number of refreshes are number of times we pulled a webhook configuration
|
// number of refreshes are number of times we recrated a webhook accessor
|
||||||
// from the cache without having to create new ones from scratch.
|
// instead of pulling from the cache.
|
||||||
numberOfRefreshes int
|
numberOfRefreshes int
|
||||||
finalNumberOfWebhookAccessors int
|
finalNumberOfWebhookAccessors int
|
||||||
}{
|
}{
|
||||||
|
@ -106,10 +106,15 @@ func (v *validatingWebhookConfigurationManager) getConfiguration() ([]webhook.We
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return []webhook.WebhookAccessor{}, err
|
return []webhook.WebhookAccessor{}, err
|
||||||
}
|
}
|
||||||
return v.smartReloadValidatingWebhookConfigurations(configurations), nil
|
return v.getValidatingWebhookConfigurations(configurations), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *validatingWebhookConfigurationManager) smartReloadValidatingWebhookConfigurations(configurations []*v1.ValidatingWebhookConfiguration) []webhook.WebhookAccessor {
|
// getMutatingWebhookConfigurations returns the webhook accessors for a given list of
|
||||||
|
// mutating webhook configurations.
|
||||||
|
//
|
||||||
|
// This function will, first, try to load the webhook accessors from the cache and avoid
|
||||||
|
// recreating them, which can be expessive (requiring CEL expression recompilation).
|
||||||
|
func (v *validatingWebhookConfigurationManager) getValidatingWebhookConfigurations(configurations []*v1.ValidatingWebhookConfiguration) []webhook.WebhookAccessor {
|
||||||
sort.SliceStable(configurations, ValidatingWebhookConfigurationSorter(configurations).ByName)
|
sort.SliceStable(configurations, ValidatingWebhookConfigurationSorter(configurations).ByName)
|
||||||
accessors := []webhook.WebhookAccessor{}
|
accessors := []webhook.WebhookAccessor{}
|
||||||
for _, c := range configurations {
|
for _, c := range configurations {
|
||||||
|
@ -118,8 +118,8 @@ func TestGetValidatingWebhookConfigSmartReload(t *testing.T) {
|
|||||||
name string
|
name string
|
||||||
args args
|
args args
|
||||||
numberOfCreations int
|
numberOfCreations int
|
||||||
// number of refreshes are number of times we pulled a webhook configuration
|
// number of refreshes are number of times we recrated a webhook accessor
|
||||||
// from the cache without having to create new ones from scratch.
|
// instead of pulling from the cache.
|
||||||
numberOfRefreshes int
|
numberOfRefreshes int
|
||||||
finalNumberOfWebhookAccessors int
|
finalNumberOfWebhookAccessors int
|
||||||
}{
|
}{
|
||||||
|
@ -123,7 +123,6 @@ func (m *mutatingWebhookAccessor) GetRESTClient(clientManager *webhookutil.Clien
|
|||||||
return m.client, m.clientErr
|
return m.client, m.clientErr
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: graduation to beta: resolve the fact that we rebuild ALL items whenever ANY config changes in NewMutatingWebhookConfigurationManager and NewValidatingWebhookConfigurationManager ... now that we're doing CEL compilation, we probably want to avoid that
|
|
||||||
func (m *mutatingWebhookAccessor) GetCompiledMatcher(compiler cel.FilterCompiler) matchconditions.Matcher {
|
func (m *mutatingWebhookAccessor) GetCompiledMatcher(compiler cel.FilterCompiler) matchconditions.Matcher {
|
||||||
m.compileMatcher.Do(func() {
|
m.compileMatcher.Do(func() {
|
||||||
expressions := make([]cel.ExpressionAccessor, len(m.MutatingWebhook.MatchConditions))
|
expressions := make([]cel.ExpressionAccessor, len(m.MutatingWebhook.MatchConditions))
|
||||||
|
Loading…
Reference in New Issue
Block a user