kubernetesk8s.io/kubernetes/pkg/controller/ttlafterfinished Index | Files | Directories

package ttlafterfinished

import "k8s.io/kubernetes/pkg/controller/ttlafterfinished"

Index

Types

type Controller

type Controller struct {
	// contains filtered or unexported fields
}

Controller watches for changes of Jobs API objects. Triggered by Job creation and updates, it enqueues Jobs that have non-nil `.spec.ttlSecondsAfterFinished` to the `queue`. The Controller has workers who consume `queue`, check whether the Job TTL has expired or not; if the Job TTL hasn't expired, it will add the Job to the queue after the TTL is expected to expire; if the TTL has expired, the worker will send requests to the API server to delete the Jobs accordingly. This is implemented outside of Job controller for separation of concerns, and because it will be extended to handle other finishable resource types.

func New

New creates an instance of Controller

func (*Controller) Run

func (tc *Controller) Run(ctx context.Context, workers int)

Run starts the workers to clean up Jobs.

Source Files

ttlafterfinished_controller.go

Directories

PathSynopsis
pkg/controller/ttlafterfinished/config
pkg/controller/ttlafterfinished/config/v1alpha1
pkg/controller/ttlafterfinished/metrics
Version
v1.33.0 (latest)
Published
Apr 23, 2025
Platform
linux/amd64
Imports
22 packages
Last checked
3 hours ago

Tools for package owners.