core

package
v0.0.1-alpha.2 Latest Latest
Warning

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

Go to latest
Published: Dec 15, 2022 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Actuator

type Actuator interface {
	Apply(ctx context.Context, snapshot state.ClusterSnapshot, plan PartitioningPlan) (bool, error)
}

type Controller

type Controller struct {
	client.Client
	Scheme *runtime.Scheme
	// contains filtered or unexported fields
}

func NewController

func NewController(
	scheme *runtime.Scheme,
	client client.Client,
	podBatcher util.Batcher[v1.Pod],
	clusterState *state.ClusterState,
	planner Planner,
	actuator Actuator) Controller

func (*Controller) Reconcile

func (c *Controller) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

func (*Controller) SetupWithManager

func (c *Controller) SetupWithManager(mgr ctrl.Manager, name string) error

type PartitioningPlan

type PartitioningPlan struct {
	DesiredState state.PartitioningState
	// contains filtered or unexported fields
}

func (PartitioningPlan) GetId

func (p PartitioningPlan) GetId() string

type Planner

type Planner interface {
	Plan(ctx context.Context, snapshot state.ClusterSnapshot, pendingPods []v1.Pod) (PartitioningPlan, error)
}

Jump to

Keyboard shortcuts

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