Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the operator v1alpha1 API group +kubebuilder:object:generate=true +groupName=operator.sme.sap.com
Index ¶
- Variables
- func Resource(resource string) schema.GroupResource
- type CAPOperator
- func (in *CAPOperator) DeepCopy() *CAPOperator
- func (in *CAPOperator) DeepCopyInto(out *CAPOperator)
- func (in *CAPOperator) DeepCopyObject() runtime.Object
- func (c *CAPOperator) GetDeploymentName() string
- func (c *CAPOperator) GetDeploymentNamespace() string
- func (c *CAPOperator) GetSpec() runtimetypes.Unstructurable
- func (c *CAPOperator) GetStatus() *component.Status
- type CAPOperatorList
- type CAPOperatorSpec
- type CAPOperatorStatus
- type CertManager
- type CertificateConfig
- type CertificateManager
- type Controller
- type Duration
- type Gardener
- type Grafana
- type GrafanaDashboard
- type Monitoring
- type NameValue
- type SubscriptionServer
- type VersionMonitoring
- type Webhook
Constants ¶
This section is empty.
Variables ¶
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 (c *CAPOperator) GetSpec() runtimetypes.Unstructurable
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Gardener.
func (*Gardener) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Grafana ¶
type Grafana struct {
// Dashboard configuration
Dashboard *GrafanaDashboard `json:"dashboard,omitempty"`
}
func (*Grafana) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Grafana.
func (*Grafana) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDashboard ¶
type GrafanaDashboard struct {
// Labels for selecting ConfigMaps with dashboards in Grafana
ConfigMapLabels map[string]string `json:"configMapLabels,omitempty"`
}
func (*GrafanaDashboard) DeepCopy ¶
func (in *GrafanaDashboard) DeepCopy() *GrafanaDashboard
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboard.
func (*GrafanaDashboard) DeepCopyInto ¶
func (in *GrafanaDashboard) DeepCopyInto(out *GrafanaDashboard)
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"`
// Prometheus service monitor selector labels
ServiceMonitorSelectorLabels map[string]string `json:"serviceMonitorSelectorLabels,omitempty"`
// Grafana configuration
Grafana *Grafana `json:"grafana,omitempty"`
}
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 ¶
Generic Name/Value configuration
func (*NameValue) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NameValue.
func (*NameValue) DeepCopyInto ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Webhook.
func (*Webhook) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.