const maxRetries …
const endpointSliceChangeMinSyncDelay …
const defaultSyncBackOff …
const maxSyncBackOff …
const controllerName …
const topologyQueueItemKey …
func NewController(ctx context.Context, podInformer coreinformers.PodInformer,
serviceInformer coreinformers.ServiceInformer,
nodeInformer coreinformers.NodeInformer,
endpointSliceInformer discoveryinformers.EndpointSliceInformer,
maxEndpointsPerSlice int32,
client clientset.Interface,
endpointUpdatesBatchPeriod time.Duration,
) *Controller { … }
type Controller …
func (c *Controller) Run(ctx context.Context, workers int) { … }
func (c *Controller) serviceQueueWorker(logger klog.Logger) { … }
func (c *Controller) processNextServiceWorkItem(logger klog.Logger) bool { … }
func (c *Controller) topologyQueueWorker(logger klog.Logger) { … }
func (c *Controller) processNextTopologyWorkItem(logger klog.Logger) bool { … }
func (c *Controller) handleErr(logger klog.Logger, err error, key string) { … }
func (c *Controller) syncService(logger klog.Logger, key string) error { … }
func (c *Controller) onServiceUpdate(obj interface{ … }
func (c *Controller) onServiceDelete(obj interface{ … }
func (c *Controller) onEndpointSliceAdd(obj interface{ … }
func (c *Controller) onEndpointSliceUpdate(logger klog.Logger, prevObj, obj interface{ … }
func (c *Controller) onEndpointSliceDelete(obj interface{ … }
func (c *Controller) queueServiceForEndpointSlice(endpointSlice *discovery.EndpointSlice) { … }
func (c *Controller) addPod(obj interface{ … }
func (c *Controller) updatePod(old, cur interface{ … }
func (c *Controller) deletePod(obj interface{ … }
func (c *Controller) addNode() { … }
func (c *Controller) updateNode(old, cur interface{ … }
func (c *Controller) deleteNode() { … }
func (c *Controller) checkNodeTopologyDistribution(logger klog.Logger) { … }
func trackSync(err error) { … }
func dropEndpointSlicesPendingDeletion(endpointSlices []*discovery.EndpointSlice) []*discovery.EndpointSlice { … }
func getEndpointSliceFromDeleteAction(obj interface{ … }
func isNodeReady(node *v1.Node) bool { … }