type Controller …
func NewTTLController(ctx context.Context, nodeInformer informers.NodeInformer, kubeClient clientset.Interface) *Controller { … }
type ttlBoundary …
var ttlBoundaries …
func (ttlc *Controller) Run(ctx context.Context, workers int) { … }
func (ttlc *Controller) addNode(logger klog.Logger, obj interface{ … }
func (ttlc *Controller) updateNode(logger klog.Logger, _, newObj interface{ … }
func (ttlc *Controller) deleteNode(obj interface{ … }
func (ttlc *Controller) enqueueNode(logger klog.Logger, node *v1.Node) { … }
func (ttlc *Controller) worker(ctx context.Context) { … }
func (ttlc *Controller) processItem(ctx context.Context) bool { … }
func (ttlc *Controller) getDesiredTTLSeconds() int { … }
func getIntFromAnnotation(ctx context.Context, node *v1.Node, annotationKey string) (int, bool) { … }
func setIntAnnotation(node *v1.Node, annotationKey string, value int) { … }
func (ttlc *Controller) patchNodeWithAnnotation(ctx context.Context, node *v1.Node, annotationKey string, value int) error { … }
func (ttlc *Controller) updateNodeIfNeeded(ctx context.Context, key string) error { … }