v1alpha1

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Apr 20, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the config v1alpha1 API group +kubebuilder:object:generate=true +groupName=config.sharding.timebertt.dev

Index

Constants

View Source
const GroupName = "config.sharding.timebertt.dev"

GroupName is the group name used in this package.

Variables

View Source
var (
	// SchemeBuilder is a new Scheme Builder which registers our API.
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs)
	// AddToScheme is a reference to the Scheme Builder's AddToScheme function.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func RegisterDefaults

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

func SetDefaults_Controller

func SetDefaults_Controller(obj *Controller)

func SetDefaults_HealthEndpoint

func SetDefaults_HealthEndpoint(obj *HealthEndpoint)

func SetDefaults_MetricsEndpoint

func SetDefaults_MetricsEndpoint(obj *MetricsEndpoint)

func SetDefaults_ServiceReference

func SetDefaults_ServiceReference(obj *admissionregistrationv1.ServiceReference)

func SetDefaults_SharderConfig

func SetDefaults_SharderConfig(obj *SharderConfig)

func SetDefaults_SharderController

func SetDefaults_SharderController(obj *SharderController)

func SetDefaults_Webhook

func SetDefaults_Webhook(obj *Webhook)

func SetDefaults_WebhookClientConfig

func SetDefaults_WebhookClientConfig(obj *admissionregistrationv1.WebhookClientConfig)

func SetDefaults_WebhookConfig

func SetDefaults_WebhookConfig(obj *WebhookConfig)

func SetObjectDefaults_SharderConfig

func SetObjectDefaults_SharderConfig(in *SharderConfig)

Types

type Controller

type Controller struct {
	// Sharder configures the sharder controller.
	// +optional
	Sharder *SharderController `json:"sharder,omitempty"`
}

Controller configures the sharder's controllers.

func (*Controller) DeepCopy

func (in *Controller) DeepCopy() *Controller

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Controller.

func (*Controller) DeepCopyInto

func (in *Controller) DeepCopyInto(out *Controller)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HealthEndpoint

type HealthEndpoint struct {
	// BindAddress is the TCP address that the controller should bind to
	// for serving health probes
	// It can be set to "0" to disable serving the health probe.
	// Defaults to :8081
	// +optional
	BindAddress string `json:"bindAddress,omitempty"`
}

HealthEndpoint defines the health configs.

func (*HealthEndpoint) DeepCopy

func (in *HealthEndpoint) DeepCopy() *HealthEndpoint

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthEndpoint.

func (*HealthEndpoint) DeepCopyInto

func (in *HealthEndpoint) DeepCopyInto(out *HealthEndpoint)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetricsEndpoint

type MetricsEndpoint struct {
	// BindAddress is the TCP address that the controller should bind to
	// for serving prometheus metrics.
	// It can be set to "0" to disable the metrics serving.
	// Defaults to 127.0.0.1:8080
	// +optional
	BindAddress string `json:"bindAddress,omitempty"`
}

MetricsEndpoint defines the metrics configs.

func (*MetricsEndpoint) DeepCopy

func (in *MetricsEndpoint) DeepCopy() *MetricsEndpoint

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsEndpoint.

func (*MetricsEndpoint) DeepCopyInto

func (in *MetricsEndpoint) DeepCopyInto(out *MetricsEndpoint)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharderConfig

type SharderConfig struct {
	metav1.TypeMeta `json:",inline"`

	// ClientConnection holds configuration for the kubernetes API clients.
	// +optional
	ClientConnection *componentbaseconfigv1alpha1.ClientConnectionConfiguration `json:"clientConnection,omitempty"`
	// LeaderElection is the LeaderElection config to be used when configuring
	// the manager.Manager leader election
	// +optional
	LeaderElection *componentbaseconfigv1alpha1.LeaderElectionConfiguration `json:"leaderElection,omitempty"`
	// Debugging holds configuration for Debugging related features.
	// +optional
	Debugging *componentbaseconfigv1alpha1.DebuggingConfiguration `json:"debugging,omitempty"`
	// Health contains the controller health configuration
	Health HealthEndpoint `json:"health"`
	// Metrics contains the controller metrics configuration
	Metrics MetricsEndpoint `json:"metrics"`
	// Controller configures the sharder's controllers.
	Controller Controller `json:"controller"`
	// Webhook configures webhooks and the webhook server.
	Webhook Webhook `json:"webhook"`
	// GracefulShutdownTimeout is the duration given to runnable to stop before the manager actually returns on stop.
	// To disable graceful shutdown, set it to 0s.
	// To use graceful shutdown without timeout, set to a negative duration, e.G. -1s.
	// The graceful shutdown is skipped for safety reasons in case the leader election lease is lost.
	// Defaults to 15s
	GracefulShutdownTimeout *metav1.Duration `json:"gracefulShutDown,omitempty"`
}

SharderConfig is the configuration object for the sharder component.

func (*SharderConfig) DeepCopy

func (in *SharderConfig) DeepCopy() *SharderConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharderConfig.

func (*SharderConfig) DeepCopyInto

func (in *SharderConfig) DeepCopyInto(out *SharderConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SharderConfig) DeepCopyObject

func (in *SharderConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SharderController

type SharderController struct {
	// SyncPeriod configures how often a periodic resync of all object assignments in a ring in performed.
	// Defaults to 5m
	// +optional
	SyncPeriod *metav1.Duration `json:"syncPeriod,omitempty"`
}

SharderController configures the sharder controller.

func (*SharderController) DeepCopy

func (in *SharderController) DeepCopy() *SharderController

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharderController.

func (*SharderController) DeepCopyInto

func (in *SharderController) DeepCopyInto(out *SharderController)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Webhook

type Webhook struct {
	// Server configures the sharder's webhook server.
	// +optional
	Server *WebhookServer `json:"server,omitempty"`
	// Config configures the sharder's MutatingWebhookConfiguration objects.
	// +optional
	Config *WebhookConfig `json:"config,omitempty"`
}

Webhook configures webhooks and the webhook server.

func (*Webhook) DeepCopy

func (in *Webhook) DeepCopy() *Webhook

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Webhook.

func (*Webhook) DeepCopyInto

func (in *Webhook) DeepCopyInto(out *Webhook)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WebhookConfig

type WebhookConfig struct {
	// Annotations are additional annotations that should be added to all webhook configs.
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`
	// ClientConfig configures the webhook configs' target.
	// +optional
	ClientConfig *admissionregistrationv1.WebhookClientConfig `json:"clientConfig,omitempty"`
	// NamespaceSelector overwrites the webhook configs' default namespaceSelector.
	// Note: changing/unsetting this selector will not remove labels from objects in namespaces that were previously
	// included.
	// Defaults to excluding the kube-system and sharding-system namespaces
	// +optional
	NamespaceSelector *metav1.LabelSelector `json:"namespaceSelector,omitempty"`
}

WebhookConfig configures the sharder's MutatingWebhookConfiguration objects.

func (*WebhookConfig) DeepCopy

func (in *WebhookConfig) DeepCopy() *WebhookConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookConfig.

func (*WebhookConfig) DeepCopyInto

func (in *WebhookConfig) DeepCopyInto(out *WebhookConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WebhookServer

type WebhookServer struct {
	// CertDir is the directory that contains the server key and certificate.
	// Defaults to /tmp/k8s-webhook-server/serving-certs
	// +optional
	CertDir *string `json:"certDir,omitempty"`
	// CertName is the server certificate name.
	// Defaults to tls.crt
	// +optional
	CertName *string `json:"certName,omitempty"`
	// KeyName is the server key name.
	// Defaults to tls.key
	// +optional
	KeyName *string `json:"keyName,omitempty"`
}

WebhookServer configures the webhook server.

func (*WebhookServer) DeepCopy

func (in *WebhookServer) DeepCopy() *WebhookServer

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookServer.

func (*WebhookServer) DeepCopyInto

func (in *WebhookServer) DeepCopyInto(out *WebhookServer)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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