kubernetes/staging/src/k8s.io/cloud-provider/controllers/route/route_controller.go

const maxConcurrentRouteOperations

var updateNetworkConditionBackoff

type RouteController

func New(routes cloudprovider.Routes, kubeClient clientset.Interface, nodeInformer coreinformers.NodeInformer, clusterName string, clusterCIDRs []*net.IPNet) *RouteController {}

func (rc *RouteController) Run(ctx context.Context, syncPeriod time.Duration, controllerManagerMetrics *controllersmetrics.ControllerManagerMetrics) {}

func (rc *RouteController) reconcileNodeRoutes(ctx context.Context) error {}

type routeAction

var keep

var add

var remove

var update

type routeNode

func (rc *RouteController) reconcile(ctx context.Context, nodes []*v1.Node, routes []*cloudprovider.Route) error {}

func (rc *RouteController) updateNetworkingCondition(node *v1.Node, routesCreated bool) error {}

func (rc *RouteController) isResponsibleForRoute(route *cloudprovider.Route) bool {}

// getRouteAction returns an action according to if there's a route matches a specific cidr and target Node addresses.
func getRouteAction(routes []*cloudprovider.Route, cidr string, nodeName types.NodeName, realNodeAddrs []v1.NodeAddress) routeAction {}

func equalNodeAddrs(addrs0 []v1.NodeAddress, addrs1 []v1.NodeAddress) bool {}