v1alpha1

package
v0.0.2-0...-62c69d1 Latest Latest
Warning

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

Go to latest
Published: Nov 5, 2025 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

+kubebuilder:object:generate=true +groupName=gateway.openmcp.cloud

Index

Constants

View Source
const (
	OperationAnnotation = "gateway." + openmcpconst.OperationAnnotation

	GatewayFinalizerOnCluster = "platformservice." + openmcpconst.OpenMCPGroupName + "/gateway"
)
View Source
const GroupName = "gateway." + apiconst.OpenMCPGroupName

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: GroupName, 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 ClusterRef

type ClusterRef struct {
	// Name of the referenced Cluster.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`

	// Namespace of the referenced Cluster.
	// +kubebuilder:default=default
	Namespace string `json:"namespace"`
}

func (*ClusterRef) DeepCopy

func (in *ClusterRef) DeepCopy() *ClusterRef

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

func (*ClusterRef) DeepCopyInto

func (in *ClusterRef) DeepCopyInto(out *ClusterRef)

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

type ClusterSelector

type ClusterSelector struct {
	// MatchLabels selects clusters based on labels.
	MatchLabels map[string]string `json:"matchLabels,omitempty"`

	// MatchPurpose selects clusters based on purpose.
	MatchPurpose string `json:"matchPurpose,omitempty"`
}

func (*ClusterSelector) DeepCopy

func (in *ClusterSelector) DeepCopy() *ClusterSelector

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

func (*ClusterSelector) DeepCopyInto

func (in *ClusterSelector) DeepCopyInto(out *ClusterSelector)

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

type ClusterTerm

type ClusterTerm struct {
	// Selector for multiple clusters using labels and purpose.
	Selector *ClusterSelector `json:"selector,omitempty"`

	// ClusterRef can be used to reference a single cluster.
	ClusterRef *ClusterRef `json:"clusterRef,omitempty"`
}

func (*ClusterTerm) DeepCopy

func (in *ClusterTerm) DeepCopy() *ClusterTerm

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

func (*ClusterTerm) DeepCopyInto

func (in *ClusterTerm) DeepCopyInto(out *ClusterTerm)

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

type DNSConfig

type DNSConfig struct {
	// BaseDomain is the domain from which subdomains will be derived. Example: dev.openmcp.example.com.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	BaseDomain string `json:"baseDomain"`
}

func (*DNSConfig) DeepCopy

func (in *DNSConfig) DeepCopy() *DNSConfig

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

func (*DNSConfig) DeepCopyInto

func (in *DNSConfig) DeepCopyInto(out *DNSConfig)

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

type EnvoyGatewayChart

type EnvoyGatewayChart struct {
	// URL to the chart. Default: oci://docker.io/envoyproxy/gateway-helm
	// +kubebuilder:default="oci://docker.io/envoyproxy/gateway-helm"
	URL string `json:"url"`

	// Tag of the chart. Example: 1.5.4
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Tag string `json:"tag"`
}

func (*EnvoyGatewayChart) DeepCopy

func (in *EnvoyGatewayChart) DeepCopy() *EnvoyGatewayChart

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

func (*EnvoyGatewayChart) DeepCopyInto

func (in *EnvoyGatewayChart) DeepCopyInto(out *EnvoyGatewayChart)

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

type EnvoyGatewayConfig

type EnvoyGatewayConfig struct {
	// Images overrides container image locations for Envoy components.
	Images *ImagesConfig `json:"images,omitempty"`

	// Chart configuration for Envoy Gateway.
	Chart EnvoyGatewayChart `json:"chart"`
}

func (*EnvoyGatewayConfig) DeepCopy

func (in *EnvoyGatewayConfig) DeepCopy() *EnvoyGatewayConfig

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

func (*EnvoyGatewayConfig) DeepCopyInto

func (in *EnvoyGatewayConfig) DeepCopyInto(out *EnvoyGatewayConfig)

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

type GatewayServiceConfig

type GatewayServiceConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec GatewayServiceConfigSpec `json:"spec,omitempty"`
}

GatewayServiceConfig is the Schema for the Gateway PlatformService configuration API

func (*GatewayServiceConfig) DeepCopy

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

func (*GatewayServiceConfig) DeepCopyInto

func (in *GatewayServiceConfig) DeepCopyInto(out *GatewayServiceConfig)

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

func (*GatewayServiceConfig) DeepCopyObject

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

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

type GatewayServiceConfigList

type GatewayServiceConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []GatewayServiceConfig `json:"items"`
}

GatewayServiceConfigList contains a list of GatewayServiceConfig

func (*GatewayServiceConfigList) DeepCopy

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

func (*GatewayServiceConfigList) DeepCopyInto

func (in *GatewayServiceConfigList) DeepCopyInto(out *GatewayServiceConfigList)

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

func (*GatewayServiceConfigList) DeepCopyObject

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

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

type GatewayServiceConfigSpec

type GatewayServiceConfigSpec struct {
	// EnvoyGateway configuration.
	EnvoyGateway EnvoyGatewayConfig `json:"envoyGateway"`

	// Clusters that should be included in the gateway configuration.
	Clusters []ClusterTerm `json:"clusters,omitempty"`

	// DNS configuration.
	DNS DNSConfig `json:"dns"`
}

GatewayServiceConfigSpec defines the desired state of GatewayServiceConfig

func (*GatewayServiceConfigSpec) DeepCopy

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

func (*GatewayServiceConfigSpec) DeepCopyInto

func (in *GatewayServiceConfigSpec) DeepCopyInto(out *GatewayServiceConfigSpec)

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

type ImagesConfig

type ImagesConfig struct {
	// EnvoyProxy image. Example: docker.io/envoyproxy/envoy:distroless-v1.35.3
	EnvoyProxy string `json:"proxy"`

	// EnvoyGateway image. Example: docker.io/envoyproxy/gateway:v1.5.1
	EnvoyGateway string `json:"gateway"`

	// Ratelimit image. Example: docker.io/envoyproxy/ratelimit:e74a664a
	Ratelimit string `json:"rateLimit"`
}

func (*ImagesConfig) DeepCopy

func (in *ImagesConfig) DeepCopy() *ImagesConfig

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

func (*ImagesConfig) DeepCopyInto

func (in *ImagesConfig) DeepCopyInto(out *ImagesConfig)

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