package
0.0.0-20191024030528-a481964b876e
Repository: https://github.com/divinerapier/learn-kubernetes.git
Documentation: pkg.go.dev

# Functions

DecodeInto decodes configuration whose type is *runtime.Unknown to the interface into.
NewCycleState initializes a new CycleState and returns its pointer.
NewFramework initializes plugins given the configuration and the registry.
NewStatus makes a Status out of the given arguments and returns its pointer.
WithClientSet sets clientSet for the scheduling framework.
WithInformerFactory sets informer factory for the scheduling framework.

# Constants

Error is used for internal plugin errors, unexpected input, etc.
MaxNodeScore is the maximum score a Score plugin is expected to return.
MaxTotalScore is the maximum total score.
MaxWeight defines the max weight value.
MinNodeScore is the minimum score a Score plugin is expected to return.
NotFound is the not found error message.
Skip is used when a bind plugin chooses to skip binding.
Success means that plugin ran correctly and found pod schedulable.
Unschedulable is used when a plugin finds a pod unschedulable.
UnschedulableAndUnresolvable is used when a (pre-)filter plugin finds a pod unschedulable and preemption would not change anything.
Wait is used when a permit plugin finds a pod scheduling should wait.

# Structs

CycleState provides a mechanism for plugins to store and retrieve arbitrary data.
NodeScore is a struct with node name and score.
PodInfo is a wrapper to a Pod with additional information for purposes such as tracking the timestamp when it's added to the queue or recording per-pod metrics.
Status indicates the result of running a plugin.

# Interfaces

BindPlugin is an interface that must be implemented by "bind" plugins.
FilterPlugin is an interface for Filter plugins.
Framework manages the set of plugins in use by the scheduling framework.
FrameworkHandle provides data and some tools that plugins can use.
PermitPlugin is an interface that must be implemented by "permit" plugins.
Plugin is the parent type for all the scheduling framework plugins.
PostBindPlugin is an interface that must be implemented by "postbind" plugins.
PostFilterPlugin is an interface for Post-filter plugin.
PreBindPlugin is an interface that must be implemented by "prebind" plugins.
PreFilterExtensions is an interface that is included in plugins that allow specifying callbacks to make incremental updates to its supposedly pre-calculated state.
PreFilterPlugin is an interface that must be implemented by "prefilter" plugins.
QueueSortPlugin is an interface that must be implemented by "QueueSort" plugins.
ReservePlugin is an interface for Reserve plugins.
ScoreExtensions is an interface for Score extended functionality.
ScorePlugin is an interface that must be implemented by "score" plugins to rank nodes that passed the filtering phase.
StateData is a generic type for arbitrary data stored in CycleState.
UnreservePlugin is an interface for Unreserve plugins.
WaitingPod represents a pod currently waiting in the permit phase.

# Type aliases

Code is the Status code/type which is returned from plugins.
LessFunc is the function to sort pod info.
NodeScoreList declares a list of nodes and their scores.
NodeToStatusMap declares map from node name to its status.
Option for the framework.
PluginFactory is a function that builds a plugin.
PluginToNodeScores declares a map from plugin name to its NodeScoreList.
Registry is a collection of all available plugins.
StateKey is the type of keys stored in CycleState.