controllers

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Oct 28, 2024 License: AGPL-3.0 Imports: 31 Imported by: 0

Documentation

Index

Constants

View Source
const CesServiceAnnotation = "k8s-dogu-operator.cloudogu.com/ces-services"

CesServiceAnnotation can be appended to service with information of ces services.

Variables

This section is empty.

Functions

func NewDeploymentReconciler added in v0.6.0

func NewDeploymentReconciler(client client.Client, updater IngressUpdater) *deploymentReconciler

NewDeploymentReconciler creates a new deployment reconciler.

func NewIngressClassCreator

func NewIngressClassCreator(client client.Client, className string, namespace string, recorder eventRecorder) *ingressClassCreator

NewIngressClassCreator creates a new ingress class creator.

func NewIngressUpdater added in v0.5.0

func NewIngressUpdater(client client.Client, globalConfigRepo GlobalConfigRepository, namespace string, ingressClassName string, recorder eventRecorder) (*ingressUpdater, error)

NewIngressUpdater creates a new instance responsible for updating ingress objects.

func NewMaintenanceModeUpdater added in v0.5.0

func NewMaintenanceModeUpdater(client k8sClient, namespace string, ingressUpdater IngressUpdater, recorder eventRecorder, globalConfigRepo GlobalConfigRepository) (*maintenanceModeUpdater, error)

NewMaintenanceModeUpdater creates a new maintenance mode updater.

func NewSelfsignedCertificateUpdater added in v0.12.0

func NewSelfsignedCertificateUpdater(client client.Client, namespace string, globalConfigRepo GlobalConfigRepository, recorder eventRecorder) *selfsignedCertificateUpdater

NewSelfsignedCertificateUpdater creates a new updater.

func NewServiceReconciler added in v0.5.0

func NewServiceReconciler(client client.Client, updater IngressUpdater) *serviceReconciler

NewServiceReconciler creates a new service reconciler.

func NewSslCertificateUpdater added in v0.3.0

func NewSslCertificateUpdater(client client.Client, namespace string, globalConfigRepo GlobalConfigRepository, recorder eventRecorder) *sslCertificateUpdater

NewSslCertificateUpdater creates a new updater.

func NewWarpMenuCreator added in v0.2.0

func NewWarpMenuCreator(client client.Client, doguVersionRegistry warp.DoguVersionRegistry, localDoguRepo warp.LocalDoguRepo, namespace string, recorder eventRecorder, globalConfig warp.GlobalConfigRepository) *warpMenuCreator

NewWarpMenuCreator initialises a creator object to start the warp menu creation

Types

type CesService

type CesService struct {
	// Name of the ces service serving as identifier.
	Name string `json:"name"`
	// Port of the ces service.
	Port int `json:"port"`
	// Location of the ces service defining the external path to the service.
	Location string `json:"location"`
	// Pass of the ces service defining the target path inside the service's pod.
	Pass string `json:"pass"`
	// Rewrite that should be applied to the ingress configuration.
	// Is a json-marshalled `serviceRewrite`. Useful if Dogus do not support sub-paths.
	Rewrite string `json:"rewrite,omitempty"`
}

CesService contains information about one exposed ces service.

type DeploymentReadyChecker added in v0.6.0

type DeploymentReadyChecker interface {
	// IsReady checks whether the application of the deployment is ready, i.e., contains at least one ready pod.
	IsReady(ctx context.Context, deploymentName string) (bool, error)
}

DeploymentReadyChecker checks the readiness from deployments.

type GlobalConfigRepository added in v0.15.1

type GlobalConfigRepository interface {
	Get(context.Context) (libconfig.GlobalConfig, error)
	Watch(context.Context, ...libconfig.WatchFilter) (<-chan repository.GlobalConfigWatchResult, error)
	Update(ctx context.Context, globalConfig libconfig.GlobalConfig) (libconfig.GlobalConfig, error)
}

type IngressUpdater added in v0.5.0

type IngressUpdater interface {
	// UpsertIngressForService creates or updates the ingress object of the given service.
	UpsertIngressForService(ctx context.Context, service *corev1.Service) error
}

IngressUpdater is responsible to create and update the actual ingress objects in the cluster.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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