v1alpha1

package
v0.0.0-...-4863087 Latest Latest
Warning

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

Go to latest
Published: Dec 13, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the operator v1alpha1 API group +kubebuilder:object:generate=true +groupName=operator.sme.sap.com

Index

Constants

This section is empty.

Variables

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

	// Needed by kubernetes/code-generator.
	SchemeGroupVersion = GroupVersion
)

Functions

func Resource

func Resource(resource string) schema.GroupResource

Needed by kubernetes/code-generator.

Types

type CAPOperator

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

	Spec   CAPOperatorSpec   `json:"spec,omitempty"`
	Status CAPOperatorStatus `json:"status,omitempty"`
}

CAPOperator is the Schema for the CAPOperators API

func (*CAPOperator) DeepCopy

func (in *CAPOperator) DeepCopy() *CAPOperator

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

func (*CAPOperator) DeepCopyInto

func (in *CAPOperator) DeepCopyInto(out *CAPOperator)

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

func (*CAPOperator) DeepCopyObject

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

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

func (*CAPOperator) GetDeploymentName

func (c *CAPOperator) GetDeploymentName() string

func (*CAPOperator) GetDeploymentNamespace

func (c *CAPOperator) GetDeploymentNamespace() string

func (*CAPOperator) GetSpec

func (*CAPOperator) GetStatus

func (c *CAPOperator) GetStatus() *component.Status

type CAPOperatorList

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

CAPOperatorList contains a list of CAPOperator

func (*CAPOperatorList) DeepCopy

func (in *CAPOperatorList) DeepCopy() *CAPOperatorList

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

func (*CAPOperatorList) DeepCopyInto

func (in *CAPOperatorList) DeepCopyInto(out *CAPOperatorList)

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

func (*CAPOperatorList) DeepCopyObject

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

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

type CAPOperatorSpec

type CAPOperatorSpec struct {
	// SubscriptionServer specification
	SubscriptionServer SubscriptionServer `json:"subscriptionServer"`
	// +kubebuilder:validation:Pattern=^[a-z0-9-.]*$
	// Public ingress URL for the cluster Load Balancer
	DNSTarget string `json:"dnsTarget,omitempty"`
	// +kubebuilder:validation:MinItems=1
	// Labels used to identify the istio ingress-gateway component and its corresponding namespace. Usually {"app":"istio-ingressgateway","istio":"ingressgateway"}
	IngressGatewayLabels []NameValue `json:"ingressGatewayLabels,omitempty"`
	// Controller specification
	Controller Controller `json:"controller,omitempty"`
	// Monitoring specification
	Monitoring Monitoring `json:"monitoring,omitempty"`
	// Webhook specification
	Webhook Webhook `json:"webhook,omitempty"`
}

CAPOperatorSpec defines the desired state of CAPOperator

func (*CAPOperatorSpec) DeepCopy

func (in *CAPOperatorSpec) DeepCopy() *CAPOperatorSpec

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

func (*CAPOperatorSpec) DeepCopyInto

func (in *CAPOperatorSpec) DeepCopyInto(out *CAPOperatorSpec)

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

func (*CAPOperatorSpec) ToUnstructured

func (c *CAPOperatorSpec) ToUnstructured() map[string]any

type CAPOperatorStatus

type CAPOperatorStatus struct {
	// add other fields to status subresource here
	component.Status `json:",inline"`
}

func (*CAPOperatorStatus) DeepCopy

func (in *CAPOperatorStatus) DeepCopy() *CAPOperatorStatus

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

func (*CAPOperatorStatus) DeepCopyInto

func (in *CAPOperatorStatus) DeepCopyInto(out *CAPOperatorStatus)

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

type CertManager

type CertManager struct {
	// Issuer name
	IssuerName string `json:"issuerName,omitempty"`
	// Issuer kind
	IssuerKind string `json:"issuerKind,omitempty"`
	// Issuer group
	IssuerGroup string `json:"issuerGroup,omitempty"`
}

func (*CertManager) DeepCopy

func (in *CertManager) DeepCopy() *CertManager

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

func (*CertManager) DeepCopyInto

func (in *CertManager) DeepCopyInto(out *CertManager)

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

type CertificateConfig

type CertificateConfig struct {
	// Gardener configuration
	Gardener Gardener `json:"gardener,omitempty"`
	// CertManager configuration
	CertManager CertManager `json:"certManager,omitempty"`
}

func (*CertificateConfig) DeepCopy

func (in *CertificateConfig) DeepCopy() *CertificateConfig

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

func (*CertificateConfig) DeepCopyInto

func (in *CertificateConfig) DeepCopyInto(out *CertificateConfig)

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

type CertificateManager

type CertificateManager string

Supported values are Gardener, CertManager, or Default For the subscription server, it can be either Gardener or CertManager, while for the webhook, it can be either Default or CertManager

type Controller

type Controller struct {
	// Optionally enable detailed opertational metrics for the controller by setting this to true
	DetailedOperationalMetrics bool `json:"detailedOperationalMetrics,omitempty"`
	// Version monitoring configuration
	VersionMonitoring *VersionMonitoring `json:"versionMonitoring,omitempty"`
	// Optionally specify list of additional volumes for the controller pod(s)
	Volumes []corev1.Volume `json:"volumes,omitempty"`
	// Optionally specify list of additional volumeMounts for the controller container(s)
	VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
}

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 Duration

type Duration string

Duration is a valid time duration that can be parsed by Prometheus Supported units: y, w, d, h, m, s, ms Examples: `30s`, `1m`, `1h20m15s`, `15d` +kubebuilder:validation:Pattern:="^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$"

type Gardener

type Gardener struct {
	// Issuer name
	IssuerName string `json:"issuerName,omitempty"`
	// Issuer namespace
	IssuerNamespace string `json:"issuerNamespace,omitempty"`
}

func (*Gardener) DeepCopy

func (in *Gardener) DeepCopy() *Gardener

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

func (*Gardener) DeepCopyInto

func (in *Gardener) DeepCopyInto(out *Gardener)

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

type Monitoring

type Monitoring struct {
	// Optionally enable Prometheus monitoring for all components
	Enabled bool `json:"enabled"`
}

func (*Monitoring) DeepCopy

func (in *Monitoring) DeepCopy() *Monitoring

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

func (*Monitoring) DeepCopyInto

func (in *Monitoring) DeepCopyInto(out *Monitoring)

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

type NameValue

type NameValue struct {
	Name  string `json:"name"`
	Value string `json:"value"`
}

Generic Name/Value configuration

func (*NameValue) DeepCopy

func (in *NameValue) DeepCopy() *NameValue

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

func (*NameValue) DeepCopyInto

func (in *NameValue) DeepCopyInto(out *NameValue)

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

type SubscriptionServer

type SubscriptionServer struct {
	Subdomain string `json:"subDomain"`
	// Certificate manager which can be either `Gardener` or `CertManager`
	// +kubebuilder:validation:Enum=Gardener;CertManager
	CertificateManager CertificateManager `json:"certificateManager,omitempty"`
	// Certificate configuration
	CertificateConfig *CertificateConfig `json:"certificateConfig,omitempty"`
}

func (*SubscriptionServer) DeepCopy

func (in *SubscriptionServer) DeepCopy() *SubscriptionServer

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

func (*SubscriptionServer) DeepCopyInto

func (in *SubscriptionServer) DeepCopyInto(out *SubscriptionServer)

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

type VersionMonitoring

type VersionMonitoring struct {
	// URL of the Prometheus server from which metrics related to managed application versions can be queried
	PrometheusAddress string `json:"prometheusAddress,omitempty"`
	// The duration (example 2h) after which versions are evaluated for deletion; based on specified workload metrics
	MetricsEvaluationInterval Duration `json:"metricsEvaluationInterval,omitempty"`
	// The duration (example 10m) to wait before retrying to acquire Prometheus client and verify connection, after a failed attempt
	PromClientAcquireRetryDelay Duration `json:"promClientAcquireRetryDelay,omitempty"`
}

func (*VersionMonitoring) DeepCopy

func (in *VersionMonitoring) DeepCopy() *VersionMonitoring

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

func (*VersionMonitoring) DeepCopyInto

func (in *VersionMonitoring) DeepCopyInto(out *VersionMonitoring)

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

type Webhook

type Webhook struct {
	// Certificate manager which can be either `Default` or `CertManager`
	// +kubebuilder:validation:Enum=Default;CertManager
	CertificateManager CertificateManager `json:"certificateManager,omitempty"`
	// Certificate configuration
	CertificateConfig *CertificateConfig `json:"certificateConfig,omitempty"`
}

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.

Jump to

Keyboard shortcuts

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