kubernetes: k8s.io/kubernetes/pkg/kubelet/pluginmanager Index | Files | Directories

package pluginmanager

import "k8s.io/kubernetes/pkg/kubelet/pluginmanager"


Package Files


type PluginManager Uses

type PluginManager interface {
    // Starts the plugin manager and all the asynchronous loops that it controls
    Run(sourcesReady config.SourcesReady, stopCh <-chan struct{})

    // AddHandler adds the given plugin handler for a specific plugin type, which
    // will be added to the actual state of world cache so that it can be passed to
    // the desired state of world cache in order to be used during plugin
    // registration/deregistration
    AddHandler(pluginType string, pluginHandler cache.PluginHandler)

PluginManager runs a set of asynchronous loops that figure out which plugins need to be registered/deregistered and makes it so.

func NewPluginManager Uses

func NewPluginManager(
    sockDir string,
    recorder record.EventRecorder) PluginManager

NewPluginManager returns a new concrete instance implementing the PluginManager interface.


cachePackage cache implements data structures used by the kubelet plugin manager to keep track of registered plugins.
operationexecutorPackage operationexecutor implements interfaces that enable execution of register and unregister operations with a goroutinemap so that more than one operation is never triggered on the same plugin.
reconcilerPackage reconciler implements interfaces that attempt to reconcile the desired state of the world with the actual state of the world by triggering relevant actions (register/deregister plugins).

Package pluginmanager imports 10 packages (graph) and is imported by 2 packages. Updated 2021-01-06. Refresh now. Tools for package owners.