cleanup

package
v0.0.74 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 26, 2024 License: Apache-2.0 Imports: 28 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Workloads = sets.NewSet[string]([]string{
		"apiservice",
		"configmap",
		"clusterrole",
		"clusterrolebinding",
		"cronjob",
		"daemonset",
		"deployment",
		"endpoints",
		"endpointslice",
		"job",
		"lease",
		"namespace",
		"node",
		"persistentvolume",
		"persistentvolumeclaim",
		"pod",
		"replicaset",
		"role",
		"rolebinding",
		"secret",
		"service",
		"serviceaccount",
		"statefulset",
	}...) // FIXME put in a configmap
)

Functions

Types

type KubernetesAPI

type KubernetesAPI struct {
	Client dynamic.Interface
}

func NewKubernetesAPI

func NewKubernetesAPI(client dynamic.Interface, discovery discovery.DiscoveryInterface) *KubernetesAPI

func (*KubernetesAPI) FetchResources

func (h *KubernetesAPI) FetchResources() (ResourceMaps, error)

builds a map of running resources in the cluster needed for cleanup

type ResourceMaps

type ResourceMaps struct {
	RunningWlidsToContainerNames *maps.SafeMap[string, sets.Set[string]]
	RunningInstanceIds           sets.Set[string]
	RunningContainerImageIds     sets.Set[string]
	RunningTemplateHash          sets.Set[string]
}

ResourceMaps is a map of running resources in the cluster, based on these maps we can decide which files to delete

type ResourcesCleanupHandler

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

func NewResourcesCleanupHandler

func NewResourcesCleanupHandler(appFs afero.Fs, root string, interval time.Duration, fetcher ResourcesFetcher) *ResourcesCleanupHandler

func (*ResourcesCleanupHandler) GetFilesToDelete

func (h *ResourcesCleanupHandler) GetFilesToDelete() []string

func (*ResourcesCleanupHandler) StartCleanupTask

func (h *ResourcesCleanupHandler) StartCleanupTask()

type ResourcesFetcher

type ResourcesFetcher interface {
	FetchResources() (ResourceMaps, error)
}

type TypeCleanupHandlerFunc

type TypeCleanupHandlerFunc func(kind, path string, metadata *metav1.ObjectMeta, resourceMaps ResourceMaps) bool

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL