workloads

package
v0.20.0 Latest Latest
Warning

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

Go to latest
Published: Oct 17, 2023 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	EmptyKey      types.NamespacedName = types.NamespacedName{}
	EmptyLabel    map[string]string    = map[string]string{}
	EmptySelector map[string]string    = map[string]string{}
)

Functions

This section is empty.

Types

type DeploymentTemplate

type DeploymentTemplate struct {
	basereconciler_resources.DeploymentTemplate
}

DeploymentTemplate specifies a Deployment resource and its rollout triggers

func (DeploymentTemplate) ApplyMeta

func (DeploymentTemplate) ApplyTrafficSelector

func (dt DeploymentTemplate) ApplyTrafficSelector(wt WithTraffic) DeploymentTemplate

type EnvoyConfigTemplate added in v0.18.0

type EnvoyConfigTemplate struct {
	resource_extensions.EnvoyConfigTemplate
}

EnvoyConfigTemplate specifies a EnvoyConfig resource

func NewEnvoyConfigTemplate added in v0.18.0

func NewEnvoyConfigTemplateFromEnvoyResources added in v0.18.0

func NewEnvoyConfigTemplateFromEnvoyResources(configs []descriptor.EnvoyDynamicConfigDescriptor) EnvoyConfigTemplate

func (EnvoyConfigTemplate) ApplyMeta added in v0.18.0

func (EnvoyConfigTemplate) SetNodeID added in v0.18.0

type HorizontalPodAutoscalerTemplate

type HorizontalPodAutoscalerTemplate struct {
	basereconciler_resources.HorizontalPodAutoscalerTemplate
}

HorizontalPodAutoscaler specifies a HorizontalPodAutoscaler resource

func (HorizontalPodAutoscalerTemplate) ApplyMeta

type PodDisruptionBudgetTemplate

type PodDisruptionBudgetTemplate struct {
	basereconciler_resources.PodDisruptionBudgetTemplate
}

PodDisruptionBudget specifies a PodDisruptionBudget resource

func (PodDisruptionBudgetTemplate) ApplyMeta

type PodMonitorTemplate

type PodMonitorTemplate struct {
	basereconciler_resources.PodMonitorTemplate
}

PodMonitor specifies a PodMonitor resource

func NewPodMonitorTemplateFromEndpoints

func NewPodMonitorTemplateFromEndpoints(endpoints ...monitoringv1.PodMetricsEndpoint) PodMonitorTemplate

func (PodMonitorTemplate) ApplyMeta

type ServiceTemplate

type ServiceTemplate struct {
	basereconciler_resources.ServiceTemplate
}

ServicesTemplate specifies a Services resource

func (ServiceTemplate) ApplyMeta

func (st ServiceTemplate) ApplyMeta(wt WithTraffic) ServiceTemplate

func (ServiceTemplate) ApplyTrafficSelector

func (st ServiceTemplate) ApplyTrafficSelector(main WithTraffic, canary WithTraffic) ServiceTemplate

type WithEnvoySidecar added in v0.18.0

type WithEnvoySidecar interface {
	WithWorkloadMeta
	EnvoyDynamicConfigurations() []descriptor.EnvoyDynamicConfigDescriptor
}

type WithHorizontalPodAutoscaler

type WithHorizontalPodAutoscaler interface {
	HPASpec() *saasv1alpha1.HorizontalPodAutoscalerSpec
}

type WithKey

type WithKey interface {
	GetKey() types.NamespacedName
}

type WithLabels

type WithLabels interface {
	GetLabels() map[string]string
}

type WithMonitoring

type WithMonitoring interface {
	MonitoredEndpoints() []monitoringv1.PodMetricsEndpoint
}

type WithPodDisruptionBadget

type WithPodDisruptionBadget interface {
	PDBSpec() *saasv1alpha1.PodDisruptionBudgetSpec
}

type WithSelector

type WithSelector interface {
	GetSelector() map[string]string
}

type WithTraffic

type WithTraffic interface {
	WithWorkloadMeta
	WithSelector
	SendTraffic() bool
	TrafficSelector() map[string]string
	Services() []resources.ServiceTemplate
}

type WithWorkloadMeta

type WithWorkloadMeta interface {
	WithKey
	WithLabels
	WithSelector
}

type WorkloadReconciler

type WorkloadReconciler struct {
	basereconciler.Reconciler
}

func NewFromManager

func NewFromManager(mgr manager.Manager) WorkloadReconciler

NewFromManager constructs a new Reconciler from the given manager

func (*WorkloadReconciler) NewDeploymentWorkload

func (r *WorkloadReconciler) NewDeploymentWorkload(
	main DeploymentWorkload, canary DeploymentWorkload) ([]basereconciler.Resource, error)

Directories

Path Synopsis
api/v1alpha1
Package v1alpha1 is a test API definition +kubebuilder:object:generate=true +groupName=example.com
Package v1alpha1 is a test API definition +kubebuilder:object:generate=true +groupName=example.com

Jump to

Keyboard shortcuts

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