rules

package
v0.0.0-...-dd2566a Latest Latest
Warning

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

Go to latest
Published: Jun 9, 2021 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const Separator = string(types.Separator)

Variables

This section is empty.

Functions

This section is empty.

Types

type ConfigMapUnusedRule

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

func (*ConfigMapUnusedRule) Evaluate

func (s *ConfigMapUnusedRule) Evaluate(ctx context.Context, object interface{}) (a alert.Alert, err error)

func (*ConfigMapUnusedRule) EvaluateAll

func (s *ConfigMapUnusedRule) EvaluateAll(ctx context.Context) (alerts []alert.Alert, err error)

func (*ConfigMapUnusedRule) GetDelaySeconds

func (s *ConfigMapUnusedRule) GetDelaySeconds(object interface{}) (time.Duration, error)

func (ConfigMapUnusedRule) GetName

func (s ConfigMapUnusedRule) GetName() string

func (ConfigMapUnusedRule) GetNotification

func (s ConfigMapUnusedRule) GetNotification() merlinv1beta1.Notification

func (*ConfigMapUnusedRule) GetObject

func (s *ConfigMapUnusedRule) GetObject() runtime.Object

func (ConfigMapUnusedRule) GetObjectMeta

func (s ConfigMapUnusedRule) GetObjectMeta() metav1.ObjectMeta

func (*ConfigMapUnusedRule) IsReady

func (r *ConfigMapUnusedRule) IsReady() bool

IsReady returns if the rule is ready to evaluate

func (*ConfigMapUnusedRule) New

func (*ConfigMapUnusedRule) RemoveFinalizer

func (s *ConfigMapUnusedRule) RemoveFinalizer(finalizer string)

func (*ConfigMapUnusedRule) SetFinalizer

func (s *ConfigMapUnusedRule) SetFinalizer(finalizer string)

func (*ConfigMapUnusedRule) SetReady

func (r *ConfigMapUnusedRule) SetReady(isReady bool)

SetReady sets the readiness of the rule.

type HPAInvalidScaleTargetRefRule

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

func (*HPAInvalidScaleTargetRefRule) Evaluate

func (h *HPAInvalidScaleTargetRefRule) Evaluate(ctx context.Context, object interface{}) (a alert.Alert, err error)

func (*HPAInvalidScaleTargetRefRule) EvaluateAll

func (h *HPAInvalidScaleTargetRefRule) EvaluateAll(ctx context.Context) (alerts []alert.Alert, err error)

func (*HPAInvalidScaleTargetRefRule) GetDelaySeconds

func (h *HPAInvalidScaleTargetRefRule) GetDelaySeconds(object interface{}) (time.Duration, error)

func (HPAInvalidScaleTargetRefRule) GetName

func (HPAInvalidScaleTargetRefRule) GetNotification

func (*HPAInvalidScaleTargetRefRule) GetObject

func (HPAInvalidScaleTargetRefRule) GetObjectMeta

func (*HPAInvalidScaleTargetRefRule) IsReady

func (r *HPAInvalidScaleTargetRefRule) IsReady() bool

IsReady returns if the rule is ready to evaluate

func (*HPAInvalidScaleTargetRefRule) New

func (*HPAInvalidScaleTargetRefRule) RemoveFinalizer

func (h *HPAInvalidScaleTargetRefRule) RemoveFinalizer(finalizer string)

func (*HPAInvalidScaleTargetRefRule) SetFinalizer

func (h *HPAInvalidScaleTargetRefRule) SetFinalizer(finalizer string)

func (*HPAInvalidScaleTargetRefRule) SetReady

func (r *HPAInvalidScaleTargetRefRule) SetReady(isReady bool)

SetReady sets the readiness of the rule.

type HPAReplicaPercentageRule

type HPAReplicaPercentageRule struct{}

func (*HPAReplicaPercentageRule) New

type NamespaceRequiredLabelRule

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

func (*NamespaceRequiredLabelRule) Evaluate

func (n *NamespaceRequiredLabelRule) Evaluate(ctx context.Context, object interface{}) (a alert.Alert, err error)

func (*NamespaceRequiredLabelRule) EvaluateAll

func (n *NamespaceRequiredLabelRule) EvaluateAll(ctx context.Context) (alerts []alert.Alert, err error)

func (*NamespaceRequiredLabelRule) GetDelaySeconds

func (n *NamespaceRequiredLabelRule) GetDelaySeconds(object interface{}) (time.Duration, error)

func (NamespaceRequiredLabelRule) GetName

func (n NamespaceRequiredLabelRule) GetName() string

func (NamespaceRequiredLabelRule) GetNotification

func (*NamespaceRequiredLabelRule) GetObject

func (n *NamespaceRequiredLabelRule) GetObject() runtime.Object

func (NamespaceRequiredLabelRule) GetObjectMeta

func (n NamespaceRequiredLabelRule) GetObjectMeta() metav1.ObjectMeta

func (*NamespaceRequiredLabelRule) IsReady

func (r *NamespaceRequiredLabelRule) IsReady() bool

IsReady returns if the rule is ready to evaluate

func (*NamespaceRequiredLabelRule) New

func (*NamespaceRequiredLabelRule) RemoveFinalizer

func (n *NamespaceRequiredLabelRule) RemoveFinalizer(finalizer string)

func (*NamespaceRequiredLabelRule) SetFinalizer

func (n *NamespaceRequiredLabelRule) SetFinalizer(finalizer string)

func (*NamespaceRequiredLabelRule) SetReady

func (r *NamespaceRequiredLabelRule) SetReady(isReady bool)

SetReady sets the readiness of the rule.

type PDBInvalidSelectorRule

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

func (*PDBInvalidSelectorRule) Evaluate

func (s *PDBInvalidSelectorRule) Evaluate(ctx context.Context, object interface{}) (a alert.Alert, err error)

func (*PDBInvalidSelectorRule) EvaluateAll

func (s *PDBInvalidSelectorRule) EvaluateAll(ctx context.Context) (alerts []alert.Alert, err error)

func (*PDBInvalidSelectorRule) GetDelaySeconds

func (s *PDBInvalidSelectorRule) GetDelaySeconds(object interface{}) (time.Duration, error)

func (PDBInvalidSelectorRule) GetName

func (s PDBInvalidSelectorRule) GetName() string

func (PDBInvalidSelectorRule) GetNotification

func (*PDBInvalidSelectorRule) GetObject

func (s *PDBInvalidSelectorRule) GetObject() runtime.Object

func (PDBInvalidSelectorRule) GetObjectMeta

func (s PDBInvalidSelectorRule) GetObjectMeta() metav1.ObjectMeta

func (*PDBInvalidSelectorRule) IsReady

func (r *PDBInvalidSelectorRule) IsReady() bool

IsReady returns if the rule is ready to evaluate

func (*PDBInvalidSelectorRule) New

func (*PDBInvalidSelectorRule) RemoveFinalizer

func (s *PDBInvalidSelectorRule) RemoveFinalizer(finalizer string)

func (*PDBInvalidSelectorRule) SetFinalizer

func (s *PDBInvalidSelectorRule) SetFinalizer(finalizer string)

func (*PDBInvalidSelectorRule) SetReady

func (r *PDBInvalidSelectorRule) SetReady(isReady bool)

SetReady sets the readiness of the rule.

type PDBMinAllowedDisruptionRule

type PDBMinAllowedDisruptionRule struct{}

func (*PDBMinAllowedDisruptionRule) New

type Rule

type Rule interface {
	// IsReady returns if the rule is ready to be used, RuleReconciler should initialize the rule and run evaluations for the first time
	IsReady() bool
	// SetReady sets the rule's ready status
	SetReady(bool)
	// GetName returns the rule's name
	GetName() string
	// GetObject returns the runtime.Object of the rule
	GetObject() runtime.Object
	// GetObjectMeta returns the GetObjectMeta of the rule
	GetObjectMeta() metav1.ObjectMeta
	// GetNotification returns the notifications specified for the rule
	GetNotification() merlinv1beta1.Notification
	// EvaluateAll evaluates all applicable resources for the rule, it'll be called by RuleReconciler
	EvaluateAll(context.Context) ([]alert.Alert, error)
	// Evaluate evaluates single resource, it'll be called by ResourceReconciler
	Evaluate(ctx context.Context, watchedResource interface{}) (alert.Alert, error)
	// SetFinalizer sets finalizer for the rule
	SetFinalizer(finalizer string)
	// RemoveFinalizer removes the finalizer from the rule
	RemoveFinalizer(finalizer string)
	//GetDelaySeconds returns the delayed time before the rule should be evaluated
	GetDelaySeconds(object interface{}) (time.Duration, error)
}

Rule is the interface for reconciler to evaluate if the resource meets the rule's requirement

type RuleFactory

type RuleFactory interface {
	New(context.Context, client.Client, logr.Logger, client.ObjectKey) (Rule, error)
}

RuleFactory is the factory that creates rule

type SecretUnusedRule

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

func (*SecretUnusedRule) Evaluate

func (s *SecretUnusedRule) Evaluate(ctx context.Context, object interface{}) (a alert.Alert, err error)

func (*SecretUnusedRule) EvaluateAll

func (s *SecretUnusedRule) EvaluateAll(ctx context.Context) (alerts []alert.Alert, err error)

func (*SecretUnusedRule) GetDelaySeconds

func (s *SecretUnusedRule) GetDelaySeconds(object interface{}) (time.Duration, error)

func (SecretUnusedRule) GetName

func (s SecretUnusedRule) GetName() string

func (SecretUnusedRule) GetNotification

func (s SecretUnusedRule) GetNotification() merlinv1beta1.Notification

func (*SecretUnusedRule) GetObject

func (s *SecretUnusedRule) GetObject() runtime.Object

func (SecretUnusedRule) GetObjectMeta

func (s SecretUnusedRule) GetObjectMeta() metav1.ObjectMeta

func (*SecretUnusedRule) IsReady

func (r *SecretUnusedRule) IsReady() bool

IsReady returns if the rule is ready to evaluate

func (*SecretUnusedRule) New

func (s *SecretUnusedRule) New(ctx context.Context, cli client.Client, logger logr.Logger, key client.ObjectKey) (Rule, error)

func (*SecretUnusedRule) RemoveFinalizer

func (s *SecretUnusedRule) RemoveFinalizer(finalizer string)

func (*SecretUnusedRule) SetFinalizer

func (s *SecretUnusedRule) SetFinalizer(finalizer string)

func (*SecretUnusedRule) SetReady

func (r *SecretUnusedRule) SetReady(isReady bool)

SetReady sets the readiness of the rule.

type ServiceInvalidSelectorRule

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

func (*ServiceInvalidSelectorRule) Evaluate

func (s *ServiceInvalidSelectorRule) Evaluate(ctx context.Context, object interface{}) (a alert.Alert, err error)

func (*ServiceInvalidSelectorRule) EvaluateAll

func (s *ServiceInvalidSelectorRule) EvaluateAll(ctx context.Context) (alerts []alert.Alert, err error)

func (*ServiceInvalidSelectorRule) GetDelaySeconds

func (s *ServiceInvalidSelectorRule) GetDelaySeconds(object interface{}) (time.Duration, error)

func (ServiceInvalidSelectorRule) GetName

func (s ServiceInvalidSelectorRule) GetName() string

func (ServiceInvalidSelectorRule) GetNotification

func (*ServiceInvalidSelectorRule) GetObject

func (s *ServiceInvalidSelectorRule) GetObject() runtime.Object

func (ServiceInvalidSelectorRule) GetObjectMeta

func (s ServiceInvalidSelectorRule) GetObjectMeta() metav1.ObjectMeta

func (*ServiceInvalidSelectorRule) IsReady

func (r *ServiceInvalidSelectorRule) IsReady() bool

IsReady returns if the rule is ready to evaluate

func (*ServiceInvalidSelectorRule) New

func (*ServiceInvalidSelectorRule) RemoveFinalizer

func (s *ServiceInvalidSelectorRule) RemoveFinalizer(finalizer string)

func (*ServiceInvalidSelectorRule) SetFinalizer

func (s *ServiceInvalidSelectorRule) SetFinalizer(finalizer string)

func (*ServiceInvalidSelectorRule) SetReady

func (r *ServiceInvalidSelectorRule) SetReady(isReady bool)

SetReady sets the readiness of the rule.

type Status

type Status struct {
	sync.Mutex
	// contains filtered or unexported fields
}

Jump to

Keyboard shortcuts

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