diff --git a/staging/src/k8s.io/kube-aggregator/pkg/controllers/openapi/aggregator/aggregator.go b/staging/src/k8s.io/kube-aggregator/pkg/controllers/openapi/aggregator/aggregator.go index 52d9d35afd4..8d34368b251 100644 --- a/staging/src/k8s.io/kube-aggregator/pkg/controllers/openapi/aggregator/aggregator.go +++ b/staging/src/k8s.io/kube-aggregator/pkg/controllers/openapi/aggregator/aggregator.go @@ -228,7 +228,7 @@ func (s *specAggregator) AddUpdateAPIService(apiService *v1.APIService, handler s.openAPIVersionedService.UpdateSpecLazy(s.buildMergeSpecLocked()) } - return s.updateServiceLocked(apiService.Name) + return nil } // RemoveAPIService removes an api service from OpenAPI aggregation. If it does not exist, no error is returned. diff --git a/staging/src/k8s.io/kube-aggregator/pkg/controllers/openapi/controller.go b/staging/src/k8s.io/kube-aggregator/pkg/controllers/openapi/controller.go index 5f107150c8e..69f32f4aa86 100644 --- a/staging/src/k8s.io/kube-aggregator/pkg/controllers/openapi/controller.go +++ b/staging/src/k8s.io/kube-aggregator/pkg/controllers/openapi/controller.go @@ -139,7 +139,10 @@ func (c *AggregationController) AddAPIService(handler http.Handler, apiService * // UpdateAPIService updates API Service's info and handler. func (c *AggregationController) UpdateAPIService(handler http.Handler, apiService *v1.APIService) { - if err := c.openAPIAggregationManager.AddUpdateAPIService(apiService, handler); err != nil { + if apiService.Spec.Service == nil { + return + } + if err := c.openAPIAggregationManager.UpdateAPIServiceSpec(apiService.Name); err != nil { utilruntime.HandleError(fmt.Errorf("Error updating APIService %q with err: %v", apiService.Name, err)) } key := apiService.Name