@@ -58,7 +58,8 @@ type reconciler struct {
5858vwhlister admissionlisters.ValidatingWebhookConfigurationLister
5959secretlister corelisters.SecretLister
6060
61- secretName string
61+ secretName string
62+ disableNamespaceOwnership bool
6263}
6364
6465var _ controller.Reconciler = (* reconciler )(nil )
@@ -136,13 +137,15 @@ func (ac *reconciler) reconcileValidatingWebhook(ctx context.Context, caCert []b
136137
137138webhook := configuredWebhook .DeepCopy ()
138139
139- // Set the owner to namespace.
140- ns , err := ac .client .CoreV1 ().Namespaces ().Get (ctx , system .Namespace (), metav1.GetOptions {})
141- if err != nil {
142- return fmt .Errorf ("failed to fetch namespace: %w" , err )
140+ if ! ac .disableNamespaceOwnership {
141+ // Set the owner to namespace.
142+ ns , err := ac .client .CoreV1 ().Namespaces ().Get (ctx , system .Namespace (), metav1.GetOptions {})
143+ if err != nil {
144+ return fmt .Errorf ("failed to fetch namespace: %w" , err )
145+ }
146+ nsRef := * metav1 .NewControllerRef (ns , corev1 .SchemeGroupVersion .WithKind ("Namespace" ))
147+ webhook .OwnerReferences = []metav1.OwnerReference {nsRef }
143148}
144- nsRef := * metav1 .NewControllerRef (ns , corev1 .SchemeGroupVersion .WithKind ("Namespace" ))
145- webhook .OwnerReferences = []metav1.OwnerReference {nsRef }
146149
147150for i , wh := range webhook .Webhooks {
148151if wh .Name != webhook .Name {
0 commit comments