v1alpha1

package
v1.13.0 Latest Latest
Warning

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

Go to latest
Published: Feb 4, 2026 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the enginefeatures.everest v1alpha1 API group. +kubebuilder:object:generate=true +groupName=enginefeatures.everest.percona.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "enginefeatures.everest.percona.com", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme.
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type SplitHorizonDNSConfig

type SplitHorizonDNSConfig struct {
	metav1.TypeMeta `json:",inline"`
	// metadata is a standard object metadata
	// +kubebuilder:validation:Optional
	metav1.ObjectMeta `json:"metadata,omitempty,omitzero"`

	// Spec defines the desired state of SplitHorizonDNSConfig
	// +kubebuilder:validation:Required
	Spec SplitHorizonDNSConfigSpec `json:"spec"`
	// Status defines the observed state of SplitHorizonDNSConfig
	// +kubebuilder:default={"inUse": false}
	Status SplitHorizonDNSConfigStatus `json:"status,omitempty"`
}

SplitHorizonDNSConfig is the Schema for the splithorizondnsconfigs API.

func (*SplitHorizonDNSConfig) DeepCopy

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

func (*SplitHorizonDNSConfig) DeepCopyInto

func (in *SplitHorizonDNSConfig) DeepCopyInto(out *SplitHorizonDNSConfig)

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

func (*SplitHorizonDNSConfig) DeepCopyObject

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

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

type SplitHorizonDNSConfigList

type SplitHorizonDNSConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []SplitHorizonDNSConfig `json:"items"`
}

SplitHorizonDNSConfigList contains a list of SplitHorizonDNSConfig.

func (*SplitHorizonDNSConfigList) DeepCopy

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

func (*SplitHorizonDNSConfigList) DeepCopyInto

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

func (*SplitHorizonDNSConfigList) DeepCopyObject

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

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

type SplitHorizonDNSConfigSpec

type SplitHorizonDNSConfigSpec struct {
	// BaseDomainNameSuffix is the base domain name suffix for generating domain names for each Pod in ReplicaSet.
	// It should be a valid domain name suffix.
	// +kubebuilder:validation:Pattern=`^([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}$`
	// +kubebuilder:validation:MinLength=3
	// +kubebuilder:example="example.com"
	// +kubebuilder:validation:Required
	BaseDomainNameSuffix string `json:"baseDomainNameSuffix,omitempty,omitzero"`
	// TLS is the TLS configuration for the split-horizon DNS configuration.
	// +kubebuilder:validation:Required
	TLS SplitHorizonDNSConfigTLSSpec `json:"tls"`
}

SplitHorizonDNSConfigSpec defines the desired state of SplitHorizonDNSConfig.

func (*SplitHorizonDNSConfigSpec) DeepCopy

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

func (*SplitHorizonDNSConfigSpec) DeepCopyInto

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

type SplitHorizonDNSConfigStatus

type SplitHorizonDNSConfigStatus struct {
	// InUse is a flag that indicates if the config is used by any DB cluster.
	// +kubebuilder:default=false
	InUse bool `json:"inUse,omitempty"`
	// LastObservedGeneration is the most recent generation observed for this SplitHorizonDNSConfig.
	LastObservedGeneration int64 `json:"lastObservedGeneration,omitempty"`
}

SplitHorizonDNSConfigStatus defines the observed state of SplitHorizonDNSConfig resource.

func (*SplitHorizonDNSConfigStatus) DeepCopy

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

func (*SplitHorizonDNSConfigStatus) DeepCopyInto

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

type SplitHorizonDNSConfigTLSCertificateSpec

type SplitHorizonDNSConfigTLSCertificateSpec struct {
	// CA Private Key is based64 encoded ca-key.pem file content.
	// It is provided as a write-only input field for convenience.
	// When this field is set, a webhook writes this value in the Secret specified by `.spec.tls.secretName`
	// and empties this field.
	// This field is not stored in the API.
	// +kubebuilder:validation:Required
	CAKey string `json:"ca.key"`
	// CACert is based64 encoded ca.pem file content.
	// It is provided as a write-only input field for convenience.
	// When this field is set, a webhook writes this value in the Secret specified by `.spec.tls.secretName`
	// and empties this field.
	// This field is not stored in the API.
	// +kubebuilder:validation:Required
	CACert string `json:"ca.crt"`
}

SplitHorizonDNSConfigTLSCertificateSpec defines TLS certificate parameters.

func (*SplitHorizonDNSConfigTLSCertificateSpec) DeepCopy

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

func (*SplitHorizonDNSConfigTLSCertificateSpec) DeepCopyInto

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

type SplitHorizonDNSConfigTLSSpec

type SplitHorizonDNSConfigTLSSpec struct {
	// SecretName is the name of the secret containing the TLS certificate and key for the split-horizon DNS configuration.
	// +kubebuilder:example="my-tls-secret"
	// +kubebuilder:validation:Required
	SecretName string `json:"secretName"`
	// Certificate is the TLS certificate and key for the split-horizon DNS configuration.
	// +kubebuilder:validation:Optional
	Certificate *SplitHorizonDNSConfigTLSCertificateSpec `json:"certificate,omitempty"`
}

SplitHorizonDNSConfigTLSSpec defines TLS configuration for SplitHorizonDNSConfig. It can be provided either via a secret or directly as a certificate.

func (*SplitHorizonDNSConfigTLSSpec) DeepCopy

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

func (*SplitHorizonDNSConfigTLSSpec) DeepCopyInto

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

type SplitHorizonDomain

type SplitHorizonDomain struct {
	// Domain is the SplitHorizon domain name.
	Domain string `json:"domain,omitempty"`
	// PrivateIP is the private IP address for the domain.
	PrivateIP string `json:"privateIP,omitempty"`
	// PublicIP is the public IP address for the domain.
	PublicIP string `json:"publicIP,omitempty"`
}

SplitHorizonDomain defines SplitHorizon domain status (domain -> IPs mapping).

func (*SplitHorizonDomain) DeepCopy

func (in *SplitHorizonDomain) DeepCopy() *SplitHorizonDomain

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

func (*SplitHorizonDomain) DeepCopyInto

func (in *SplitHorizonDomain) DeepCopyInto(out *SplitHorizonDomain)

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

type SplitHorizonStatus

type SplitHorizonStatus struct {
	// ConnectionURL is the connection URL using SplitHorizon domains.
	Host string `json:"host,omitempty"`
	// SplitHorizon status of SplitHorizon feature.
	Domains []SplitHorizonDomain `json:"domains,omitempty"`
}

SplitHorizonStatus holds SplitHorizon engine feature status.

func (*SplitHorizonStatus) DeepCopy

func (in *SplitHorizonStatus) DeepCopy() *SplitHorizonStatus

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

func (*SplitHorizonStatus) DeepCopyInto

func (in *SplitHorizonStatus) DeepCopyInto(out *SplitHorizonStatus)

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