v1beta1

package
v0.1.14 Latest Latest
Warning

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

Go to latest
Published: Aug 25, 2025 License: Apache-2.0 Imports: 8 Imported by: 2

Documentation

Overview

Package v1beta1 contains API Schema definitions for the v1beta1 API group +kubebuilder:object:generate=true +groupName=core.orchestrate.cloud.sap

Index

Constants

View Source
const (
	// LabelControlPlane indicates to which ControlPlane a resource belongs.
	LabelControlPlane = "core.orchestrate.cloud.sap/control-plane"

	// Finalizer is the default finalizer which is added to resources managed by the control-plane-operator.
	Finalizer = "core.orchestrate.cloud.sap"
)
View Source
const (
	// TypeReady resources are believed to be ready to handle work.
	TypeReady string = "Ready"

	// TypeSynced resources are believed to be in sync with the
	// Kubernetes resources that manage their lifecycle.
	TypeSynced      string = "Synced"
	TypeReconciling string = "Reconciling"
)

Condition types.

View Source
const (
	ReasonAvailable   string = "Available"
	ReasonUnavailable string = "Unavailable"
	ReasonCreating    string = "Creating"
	ReasonDeleting    string = "Deleting"
)

Reasons a resource is or is not ready.

View Source
const (
	ReasonReconcileSuccess string = "ReconcileSuccess"
	ReasonReconcileError   string = "ReconcileError"
	ReasonReconcilePaused  string = "ReconcilePaused"
)

Reasons a resource is or is not synced.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "core.orchestrate.cloud.sap", Version: "v1beta1"}

	// 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

func Available

func Available() metav1.Condition

Available returns a condition that indicates the resource is currently observed to be available for use.

func Creating

func Creating() metav1.Condition

Creating returns a condition that indicates the resource is currently being created.

func Deleting

func Deleting() metav1.Condition

Deleting returns a condition that indicates the resource is currently being deleted.

func ReconcileError

func ReconcileError(err error) metav1.Condition

ReconcileError returns a condition indicating that controlplane reconciler encountered an error while reconciling the resource. This could mean controlplane reconciler was unable to update the resource to reflect its desired state, or that it was unable to determine the current actual state of the resource.

func ReconcileSuccess

func ReconcileSuccess() metav1.Condition

ReconcileSuccess returns a condition indicating that reconciler successfully completed the most recent reconciliation of the resource.

func Unavailable

func Unavailable() metav1.Condition

Unavailable returns a condition that indicates the resource is currently observed NOT to be available for use.

Types

type BTPServiceOperatorConfig

type BTPServiceOperatorConfig struct {
	// The Version of BTP Service Operator to install.
	Version string `json:"version"`

	// Optional custom chart configuration.
	Chart *ChartSpec `json:"chart,omitempty"`

	// Optional additional values that should be passed to the BTP Service Operator Helm chart.
	// +kubebuilder:pruning:PreserveUnknownFields
	Values *apiextensionsv1.JSON `json:"values,omitempty"`
}

BTPServiceOperatorConfig configures the BTP Service Operator component.

func (*BTPServiceOperatorConfig) DeepCopy

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

func (*BTPServiceOperatorConfig) DeepCopyInto

func (in *BTPServiceOperatorConfig) DeepCopyInto(out *BTPServiceOperatorConfig)

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

type CertManagerConfig

type CertManagerConfig struct {
	// The Version of the cert-manager to install.
	Version string `json:"version"`

	// Optional custom chart configuration.
	Chart *ChartSpec `json:"chart,omitempty"`

	// Optional additional values that should be passed to the cert-manager Helm chart.
	// +kubebuilder:pruning:PreserveUnknownFields
	Values *apiextensionsv1.JSON `json:"values,omitempty"`
}

CertManagerConfig configures the Cert Manager component.

func (*CertManagerConfig) DeepCopy

func (in *CertManagerConfig) DeepCopy() *CertManagerConfig

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

func (*CertManagerConfig) DeepCopyInto

func (in *CertManagerConfig) DeepCopyInto(out *CertManagerConfig)

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

type ChartSpec

type ChartSpec struct {
	// Repository is the URL to a Helm repository
	Repository string `json:"repository,omitempty"`

	// Name of the Helm chart
	Name string `json:"name,omitempty"`

	// Version of the Helm chart, latest version if not set
	Version string `json:"version,omitempty"`
}

ChartSpec identifies a Helm chart.

func (*ChartSpec) DeepCopy

func (in *ChartSpec) DeepCopy() *ChartSpec

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

func (*ChartSpec) DeepCopyInto

func (in *ChartSpec) DeepCopyInto(out *ChartSpec)

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

type Component

type Component struct {
	// Name of the component which can be used to install it via the controlplane CR.
	Name string `json:"name"`
	// All available versions for that component.
	Versions []ComponentVersion `json:"versions"`
}

func (*Component) DeepCopy

func (in *Component) DeepCopy() *Component

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

func (*Component) DeepCopyInto

func (in *Component) DeepCopyInto(out *Component)

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

type ComponentVersion

type ComponentVersion struct {
	// The version number for that ComponentVersion
	Version string `json:"version"`
	// if it's a Docker Image, this specifies the Docker reference for pulling the image
	DockerRef string `json:"dockerRef,omitempty"`
	// if it's a helm chart, this specifies the helm repo
	HelmRepo string `json:"helmRepo,omitempty"`
	// if it's a helm chart, this specifies the chart name
	HelmChart string `json:"helmChart,omitempty"`
}

func (*ComponentVersion) DeepCopy

func (in *ComponentVersion) DeepCopy() *ComponentVersion

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

func (*ComponentVersion) DeepCopyInto

func (in *ComponentVersion) DeepCopyInto(out *ComponentVersion)

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

type ComponentsConfig

type ComponentsConfig struct {
	// Configuration for the Crossplane installation of this ControlPlane.
	// +kubebuilder:validation:Optional
	Crossplane *CrossplaneConfig `json:"crossplane,omitempty"`

	// Configuration for the BTP Service Operator. More info:
	// https://github.com/SAP/sap-btp-service-operator
	// +kubebuilder:validation:Optional
	BTPServiceOperator *BTPServiceOperatorConfig `json:"btpServiceOperator,omitempty"`

	// CertManager configures the cert-manager component. More info:
	// https://cert-manager.io/
	// +kubebuilder:validation:Optional
	CertManager *CertManagerConfig `json:"certManager,omitempty"`

	// Configuration for the External Secrets Operator. More info:
	// https://external-secrets.io
	// +kubebuilder:validation:Optional
	ExternalSecretsOperator *ExternalSecretsOperatorConfig `json:"externalSecretsOperator,omitempty"`

	// Configuration for Kyverno. More info:
	// https://kyverno.io/
	// +kubebuilder:validation:Optional
	Kyverno *KyvernoConfig `json:"kyverno,omitempty"`

	// Configuration for Flux. More info:
	// https://fluxcd.io/
	// +kubebuilder:validation:Optional
	Flux *FluxConfig `json:"flux,omitempty"`
}

ComponentsConfig defines all the different Components that can be installed in a ControlPlane.

func (*ComponentsConfig) DeepCopy

func (in *ComponentsConfig) DeepCopy() *ComponentsConfig

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

func (*ComponentsConfig) DeepCopyInto

func (in *ComponentsConfig) DeepCopyInto(out *ComponentsConfig)

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

type ControlPlane

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

	Spec   ControlPlaneSpec   `json:"spec,omitempty"`
	Status ControlPlaneStatus `json:"status,omitempty"`
}

ControlPlane is the Schema for the ControlPlane API +kubebuilder:object:root=true +kubebuilder:resource:shortName=cp,scope=Cluster +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Ready",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="Components Healthy",type="integer",JSONPath=".status.componentsHealthy" +kubebuilder:printcolumn:name="Components Enabled",type="integer",JSONPath=".status.componentsEnabled" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp"

func (*ControlPlane) DeepCopy

func (in *ControlPlane) DeepCopy() *ControlPlane

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

func (*ControlPlane) DeepCopyInto

func (in *ControlPlane) DeepCopyInto(out *ControlPlane)

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

func (*ControlPlane) DeepCopyObject

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

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

func (ControlPlane) WasDeleted

func (cp ControlPlane) WasDeleted() bool

type ControlPlaneList

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

ControlPlaneList contains a list of ControlPlane

func (*ControlPlaneList) DeepCopy

func (in *ControlPlaneList) DeepCopy() *ControlPlaneList

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

func (*ControlPlaneList) DeepCopyInto

func (in *ControlPlaneList) DeepCopyInto(out *ControlPlaneList)

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

func (*ControlPlaneList) DeepCopyObject

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

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

type ControlPlaneSpec

type ControlPlaneSpec struct {
	// Reference to a core configuration
	// +kubebuilder:default:={name:"default"}
	CoreReference v1.LocalObjectReference `json:"coreRef,omitempty"`

	// Configuration of the ControlPlane target (local or remote cluster)
	Target Target `json:"target"`

	// Configuration for the telemetry.
	// +kubebuilder:validation:Optional
	Telemetry *TelemetryConfig `json:"telemetry,omitempty"`

	// Pull secrets which will be used when pulling charts, providers, etc.
	// +kubebuilder:validation:Optional
	PullSecrets []v1.LocalObjectReference `json:"pullSecrets,omitempty"`

	ComponentsConfig `json:",inline"`
}

ControlPlaneSpec defines the desired state of ControlPlane

func (*ControlPlaneSpec) DeepCopy

func (in *ControlPlaneSpec) DeepCopy() *ControlPlaneSpec

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

func (*ControlPlaneSpec) DeepCopyInto

func (in *ControlPlaneSpec) DeepCopyInto(out *ControlPlaneSpec)

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

type ControlPlaneStatus

type ControlPlaneStatus struct {
	// Current service state of the ControlPlane.
	Conditions []metav1.Condition `json:"conditions"`

	// Namespace that contains resources related to the ControlPlane.
	Namespace string `json:"namespace"`

	// Number of enabled components.
	ComponentsEnabled int `json:"componentsEnabled"`

	// Number of healthy components.
	ComponentsHealthy int `json:"componentsHealthy"`
}

ControlPlaneStatus defines the observed state of ControlPlane

func (*ControlPlaneStatus) DeepCopy

func (in *ControlPlaneStatus) DeepCopy() *ControlPlaneStatus

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

func (*ControlPlaneStatus) DeepCopyInto

func (in *ControlPlaneStatus) DeepCopyInto(out *ControlPlaneStatus)

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

type CrossplaneConfig

type CrossplaneConfig struct {
	// The Version of Crossplane to install.
	Version string `json:"version"`

	// Optional custom Helm chart configuration.
	Chart *ChartSpec `json:"chart,omitempty"`

	// Optional additional values that should be passed to the Crossplane Helm chart.
	// +kubebuilder:pruning:PreserveUnknownFields
	Values *apiextensionsv1.JSON `json:"values,omitempty"`

	// List of Crossplane providers to be installed.
	// +kubebuilder:validation:Optional
	Providers []*CrossplaneProviderConfig `json:"providers,omitempty"`
}

CrossplaneConfig configures the Crossplane component.

func (*CrossplaneConfig) DeepCopy

func (in *CrossplaneConfig) DeepCopy() *CrossplaneConfig

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

func (*CrossplaneConfig) DeepCopyInto

func (in *CrossplaneConfig) DeepCopyInto(out *CrossplaneConfig)

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

type CrossplanePackageRestriction

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

	Spec   CrossplanePackageRestrictionSpec   `json:"spec,omitempty"`
	Status CrossplanePackageRestrictionStatus `json:"status,omitempty"`
}

CrossplanePackageRestriction is the Schema for the crossplanepackagerestrictions API

func (*CrossplanePackageRestriction) DeepCopy

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

func (*CrossplanePackageRestriction) DeepCopyInto

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

func (*CrossplanePackageRestriction) DeepCopyObject

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

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

type CrossplanePackageRestrictionList

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

CrossplanePackageRestrictionList contains a list of CrossplanePackageRestriction

func (*CrossplanePackageRestrictionList) DeepCopy

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

func (*CrossplanePackageRestrictionList) DeepCopyInto

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

func (*CrossplanePackageRestrictionList) DeepCopyObject

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

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

type CrossplanePackageRestrictionSpec

type CrossplanePackageRestrictionSpec struct {
	Providers      PackageRestriction `json:"providers"`
	Configurations PackageRestriction `json:"configurations"`
	Functions      PackageRestriction `json:"functions"`
}

CrossplanePackageRestrictionSpec defines the desired state of CrossplanePackageRestriction

func (*CrossplanePackageRestrictionSpec) DeepCopy

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

func (*CrossplanePackageRestrictionSpec) DeepCopyInto

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

type CrossplanePackageRestrictionStatus

type CrossplanePackageRestrictionStatus struct{}

CrossplanePackageRestrictionStatus defines the observed state of CrossplanePackageRestriction

func (*CrossplanePackageRestrictionStatus) DeepCopy

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

func (*CrossplanePackageRestrictionStatus) DeepCopyInto

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

type CrossplaneProviderConfig

type CrossplaneProviderConfig struct {
	// Name of the provider.
	// Using a well-known name will automatically configure the "package" field.
	Name string `json:"name"`

	// Version of the provider to install.
	Version string `json:"version"`

	// Provider package to be installed.
	// If "name" is set to a well-known value, this field will be configured automatically.
	// +kubebuilder:validation:Optional
	Package string `json:"package,omitempty"`

	// Pull policy for the provider.
	// One of Always, Never, IfNotPresent.
	// +kubebuilder:default=IfNotPresent
	// +kubebuilder:validation:Enum=Always;Never;IfNotPresent
	PackagePullPolicy *corev1.PullPolicy `json:"packagePullPolicy,omitempty"`

	// PackagePullSecrets are named secrets in the same namespace that can be used to fetch packages from private registries.
	PackagePullSecrets []corev1.LocalObjectReference `json:"packagePullSecrets,omitempty"`

	crossplanev1.PackageRuntimeSpec `json:",inline"`
}

CrossplaneProviderConfig represents configuration for Crossplane providers in a ControlPlane. Primarily based on the Crossplane open source API.

func (*CrossplaneProviderConfig) DeepCopy

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

func (*CrossplaneProviderConfig) DeepCopyInto

func (in *CrossplaneProviderConfig) DeepCopyInto(out *CrossplaneProviderConfig)

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

type ExternalSecretsOperatorConfig

type ExternalSecretsOperatorConfig struct {
	// The Version of External Secrets Operator to install.
	Version string `json:"version"`

	// Optional custom chart configuration.
	Chart *ChartSpec `json:"chart,omitempty"`

	// Optional additional values that should be passed to the External Secrets Operator Helm chart.
	// +kubebuilder:pruning:PreserveUnknownFields
	Values *apiextensionsv1.JSON `json:"values,omitempty"`
}

ExternalSecretsOperatorConfig configures the ExternalSecrets Operator component.

func (*ExternalSecretsOperatorConfig) DeepCopy

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

func (*ExternalSecretsOperatorConfig) DeepCopyInto

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

type FluxConfig

type FluxConfig struct {
	// The Version of Flux to install.
	Version string `json:"version"`

	// Optional custom chart configuration.
	Chart *ChartSpec `json:"chart,omitempty"`

	// Optional additional values that should be passed to the Flux Helm chart.
	// +kubebuilder:pruning:PreserveUnknownFields
	Values *apiextensionsv1.JSON `json:"values,omitempty"`
}

FluxConfig configures the Flux component.

func (*FluxConfig) DeepCopy

func (in *FluxConfig) DeepCopy() *FluxConfig

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

func (*FluxConfig) DeepCopyInto

func (in *FluxConfig) DeepCopyInto(out *FluxConfig)

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

type KubeconfigOverrides

type KubeconfigOverrides struct {
	// Host must be a host string, a host:port pair, or a URL to the base of the apiserver.
	Host string `json:"host,omitempty"`
}

func (*KubeconfigOverrides) DeepCopy

func (in *KubeconfigOverrides) DeepCopy() *KubeconfigOverrides

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

func (*KubeconfigOverrides) DeepCopyInto

func (in *KubeconfigOverrides) DeepCopyInto(out *KubeconfigOverrides)

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

type KyvernoConfig

type KyvernoConfig struct {
	// The Version of Kyverno to install.
	Version string `json:"version"`

	// Optional custom chart configuration.
	Chart *ChartSpec `json:"chart,omitempty"`

	// Optional additional values that should be passed to the Kyverno Helm chart.
	// +kubebuilder:pruning:PreserveUnknownFields
	Values *apiextensionsv1.JSON `json:"values,omitempty"`
}

KyvernoConfig configures Kyverno component.

func (*KyvernoConfig) DeepCopy

func (in *KyvernoConfig) DeepCopy() *KyvernoConfig

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

func (*KyvernoConfig) DeepCopyInto

func (in *KyvernoConfig) DeepCopyInto(out *KyvernoConfig)

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

type PackageRestriction

type PackageRestriction struct {
	Registries []string `json:"registries"`
	Packages   []string `json:"packages"`
}

PackageRestriction restricts a package type (e.g. providers) to certain registries or literal packages. If both Registries and Packages are empty, no packages of this type will be allowed.

func (*PackageRestriction) DeepCopy

func (in *PackageRestriction) DeepCopy() *PackageRestriction

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

func (*PackageRestriction) DeepCopyInto

func (in *PackageRestriction) DeepCopyInto(out *PackageRestriction)

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

type ReleaseChannel

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

	Spec   ReleaseChannelSpec   `json:"spec,omitempty"`
	Status ReleaseChannelStatus `json:"status,omitempty"`
}

ReleaseChannel is the Schema for the ReleaseChannel API +kubebuilder:object:root=true +kubebuilder:resource:shortName=rc,scope=Cluster +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:validation:XValidation:rule=(!(has(self.spec.ocmRegistryUrl) && has(self.spec.ocmRegistrySecretRef))), message="You can't specify 'ocmRegistryUrl' and 'ocmRegistrySecretRef' at the same time, either use a remote ocm registry or a secret" +kubebuilder:validation:XValidation:rule=(!(has(self.spec.ocmRegistrySecretRef) && !has(self.spec.ocmRegistrySecretKey))), message="You need to specify an 'ocmRegistrySecretKey' if you want to use the 'ocmRegistrySecretRef'." +kubebuilder:validation:XValidation:rule=(!(has(self.spec.pullSecretRef) && !has(self.spec.ocmRegistryUrl))), message="If you specify a 'pullSecretRef' you must specify an 'ocmRegistryUrl' otherwise the 'pullSecretRef' will not be used."

func (*ReleaseChannel) DeepCopy

func (in *ReleaseChannel) DeepCopy() *ReleaseChannel

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

func (*ReleaseChannel) DeepCopyInto

func (in *ReleaseChannel) DeepCopyInto(out *ReleaseChannel)

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

func (*ReleaseChannel) DeepCopyObject

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

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

type ReleaseChannelList

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

+kubebuilder:object:root=true ReleaseChannelList contains a list of ReleaseChannel

func (*ReleaseChannelList) DeepCopy

func (in *ReleaseChannelList) DeepCopy() *ReleaseChannelList

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

func (*ReleaseChannelList) DeepCopyInto

func (in *ReleaseChannelList) DeepCopyInto(out *ReleaseChannelList)

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

func (*ReleaseChannelList) DeepCopyObject

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

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

type ReleaseChannelSpec

type ReleaseChannelSpec struct {
	// Specify a ocm registry url where the releasechannel components are uploaded
	// +kubebuilder:validation:MinLength=1
	OcmRegistryUrl string `json:"ocmRegistryUrl,omitempty"`
	// This should be a reference to a secret, which has the `username` and `password` keys.
	// If specified, will be used when accessing the ocmRegistry specified in ocmRegistryUrl.
	PullSecretRef corev1.SecretReference `json:"pullSecretRef,omitempty"`

	// This parameter can be used for a tar based ocm registry in a secret.
	// The secret referenced here must contain a key where a tar based ocm registry is stored in.
	OcmRegistrySecretRef corev1.SecretReference `json:"ocmRegistrySecretRef,omitempty"`
	// Here you must specify the key which contains the tar based ocm registry in the referenced secret.
	// Required, if ocmRegistrySecretRef is specified.
	OcmRegistrySecretKey string `json:"ocmRegistrySecretKey,omitempty"`

	// When specified only components starting with this prefix will be fetched.
	// Also this prefix will be cut from the componentNames in the status field.
	PrefixFilter string `json:"prefixFilter,omitempty"`

	// Interval specifies the timespan when the registry is checked again
	// +kubebuilder:default="15m"
	Interval metav1.Duration `json:"interval"`
}

ReleaseChannelSpec defines the desired state of ReleaseChannel

func (*ReleaseChannelSpec) DeepCopy

func (in *ReleaseChannelSpec) DeepCopy() *ReleaseChannelSpec

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

func (*ReleaseChannelSpec) DeepCopyInto

func (in *ReleaseChannelSpec) DeepCopyInto(out *ReleaseChannelSpec)

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

type ReleaseChannelStatus

type ReleaseChannelStatus struct {
	// The components which are inside the ocm registry
	Components []Component `json:"components,omitempty"`
}

ReleaseChannelStatus defines the observed state of ReleaseChannel

func (*ReleaseChannelStatus) DeepCopy

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

func (*ReleaseChannelStatus) DeepCopyInto

func (in *ReleaseChannelStatus) DeepCopyInto(out *ReleaseChannelStatus)

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

type ServiceAccountReference

type ServiceAccountReference struct {
	// Name is the name of the service account.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`

	// Namespace is the namespace of the service account.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Namespace string `json:"namespace"`

	// Overrides specifies fields that should be overwritten when a kubeconfig is generated from this ServiceAccountReference.
	Overrides KubeconfigOverrides `json:"overrides,omitempty"`
}

func (*ServiceAccountReference) DeepCopy

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

func (*ServiceAccountReference) DeepCopyInto

func (in *ServiceAccountReference) DeepCopyInto(out *ServiceAccountReference)

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

type Target

type Target struct {
	api.Target `json:",inline"`

	// FluxServiceAccount is a reference to a service account that should be used by Flux.
	// +kubebuilder:validation:Required
	FluxServiceAccount ServiceAccountReference `json:"fluxServiceAccount"`
}

func (*Target) DeepCopy

func (in *Target) DeepCopy() *Target

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

func (*Target) DeepCopyInto

func (in *Target) DeepCopyInto(out *Target)

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

type TelemetryConfig

type TelemetryConfig struct {
	// Enables or disables telemetry.
	Enabled bool `json:"enabled,omitempty"`
}

TelemetryConfig allows the toggling of telemetry data

func (*TelemetryConfig) DeepCopy

func (in *TelemetryConfig) DeepCopy() *TelemetryConfig

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

func (*TelemetryConfig) DeepCopyInto

func (in *TelemetryConfig) DeepCopyInto(out *TelemetryConfig)

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

type VersionResolverFn

type VersionResolverFn func(componentName string, version string) (ComponentVersion, error)

+kubebuilder:object:generate=false

Jump to

Keyboard shortcuts

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