Documentation

Overview

Package evaluate provides functionality for managing evaluating, calling external evaluation logic through shell commands with relevant data piped to them.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Evaluation

type Evaluation struct {
	TargetReplicas int32 `json:"targetReplicas"`
}

Evaluation represents a decision on how to scale a resource

type Evaluator

type Evaluator struct {
	Config  *config.Config
	Execute execute.Executer
}

Evaluator handles triggering the evaluation logic to decide how to scale a resource

func (*Evaluator) GetEvaluation

func (e *Evaluator) GetEvaluation(spec Spec) (*Evaluation, error)

GetEvaluation uses the metrics provided to determine a set of evaluations

type GetEvaluationer

type GetEvaluationer interface {
	GetEvaluation(evaluateSpec Spec) (*Evaluation, error)
}

GetEvaluationer provides methods for retrieving an evaluation

type Spec

type Spec struct {
	Metrics    []*metric.Metric `json:"metrics"`
	Resource   metav1.Object    `json:"resource"`
	Evaluation *Evaluation      `json:"evaluation,omitempty"`
	RunType    string           `json:"runType"`
}

Spec defines information fed into an evaluator to produce an evaluation, contains optional 'Evaluation' field for storing the result

Source Files