service cidr controller manager: use new ServiceCIDR API
This commit is contained in:
@@ -557,15 +557,13 @@ func NewControllerDescriptors() map[string]*ControllerDescriptor {
|
||||
register(newLegacyServiceAccountTokenCleanerControllerDescriptor())
|
||||
register(newValidatingAdmissionPolicyStatusControllerDescriptor())
|
||||
register(newTaintEvictionControllerDescriptor())
|
||||
register(newServiceCIDRsControllerDescriptor())
|
||||
|
||||
for _, alias := range aliases.UnsortedList() {
|
||||
if _, ok := controllers[alias]; ok {
|
||||
panic(fmt.Sprintf("alias %q conflicts with a controller name", alias))
|
||||
}
|
||||
}
|
||||
if utilfeature.DefaultFeatureGate.Enabled(kubefeatures.MultiCIDRServiceAllocator) {
|
||||
register(names.ServiceCIDRController, startServiceCIDRsController)
|
||||
}
|
||||
|
||||
return controllers
|
||||
}
|
||||
|
||||
@@ -93,6 +93,7 @@ func TestControllerNamesDeclaration(t *testing.T) {
|
||||
names.ResourceClaimController,
|
||||
names.LegacyServiceAccountTokenCleanerController,
|
||||
names.ValidatingAdmissionPolicyStatusController,
|
||||
names.ServiceCIDRController,
|
||||
)
|
||||
|
||||
for _, name := range KnownControllers() {
|
||||
|
||||
@@ -22,11 +22,22 @@ package app
|
||||
import (
|
||||
"context"
|
||||
|
||||
"k8s.io/component-base/featuregate"
|
||||
"k8s.io/controller-manager/controller"
|
||||
"k8s.io/kubernetes/cmd/kube-controller-manager/names"
|
||||
"k8s.io/kubernetes/pkg/controller/servicecidrs"
|
||||
"k8s.io/kubernetes/pkg/features"
|
||||
)
|
||||
|
||||
func startServiceCIDRsController(ctx context.Context, controllerContext ControllerContext) (controller.Interface, bool, error) {
|
||||
func newServiceCIDRsControllerDescriptor() *ControllerDescriptor {
|
||||
return &ControllerDescriptor{
|
||||
name: names.ServiceCIDRController,
|
||||
initFunc: startServiceCIDRsController,
|
||||
requiredFeatureGates: []featuregate.Feature{
|
||||
features.MultiCIDRServiceAllocator,
|
||||
}}
|
||||
}
|
||||
func startServiceCIDRsController(ctx context.Context, controllerContext ControllerContext, controllerName string) (controller.Interface, bool, error) {
|
||||
go servicecidrs.NewController(
|
||||
controllerContext.InformerFactory.Networking().V1alpha1().ServiceCIDRs(),
|
||||
controllerContext.InformerFactory.Networking().V1alpha1().IPAddresses(),
|
||||
|
||||
Reference in New Issue
Block a user