v1alpha1

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Jun 30, 2026 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the services v1alpha1 API group. +kubebuilder:object:generate=true +groupName=ocm.services.open-control-plane.io

Index

Constants

View Source
const (
	Pending     InstancePhase = "Pending"
	Progressing InstancePhase = "Progressing"
	Ready       InstancePhase = "Ready"
	Failed      InstancePhase = "Failed"
	Terminating InstancePhase = "Terminating"
	Unknown     InstancePhase = "Unknown"

	ManagedControlPlane ResourceLocation = "ManagedControlPlane"
	PlatformCluster     ResourceLocation = "PlatformCluster"
)

Constants representing the phases of an instance lifecycle and the locations where managed resources can live.

View Source
const DefaultChartURL = "ghcr.io/open-component-model/kubernetes/controller/chart"

DefaultChartURL points to the default location of where the ocm-k8s-toolkit chart lives.

View Source
const DefaultReleaseName = "ocm-k8s-toolkit"

DefaultReleaseName provides the default value for the helm release of the ocm controller.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "ocm.services.open-control-plane.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme.
	SchemeBuilder = runtime.NewSchemeBuilder(func(s *runtime.Scheme) error {
		metav1.AddToGroupVersion(s, GroupVersion)
		return nil
	})

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

Functions

This section is empty.

Types

type InstancePhase added in v0.1.2

type InstancePhase string

InstancePhase is a custom type representing the phase of a service instance.

type ManagedResource added in v0.1.2

type ManagedResource struct {
	corev1.TypedObjectReference `json:",inline"`

	// +required
	Phase InstancePhase `json:"phase"`
	// +optional
	Message string `json:"message,omitempty"`
	// +optional
	Location ResourceLocation `json:"location,omitempty"`
}

ManagedResource defines a kubernetes object with its lifecycle phase.

func (*ManagedResource) DeepCopy added in v0.1.2

func (in *ManagedResource) DeepCopy() *ManagedResource

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

func (*ManagedResource) DeepCopyInto added in v0.1.2

func (in *ManagedResource) DeepCopyInto(out *ManagedResource)

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

type OCM

type OCM struct {
	metav1.TypeMeta `json:",inline"`

	// metadata is a standard object metadata
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty,omitzero"`

	// spec defines the desired state of OCM
	// +required
	Spec OCMSpec `json:"spec"`

	// status defines the observed state of OCM
	// +optional
	Status OCMStatus `json:"status,omitempty,omitzero"`
}

OCM is the Schema for the ocms API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:JSONPath=`.status.phase`,name="Phase",type=string +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:metadata:labels="openmcp.cloud/cluster=onboarding"

func (*OCM) DeepCopy

func (in *OCM) DeepCopy() *OCM

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

func (*OCM) DeepCopyInto

func (in *OCM) DeepCopyInto(out *OCM)

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

func (*OCM) DeepCopyObject

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

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

func (*OCM) Finalizer

func (o *OCM) Finalizer() string

Finalizer returns the finalizer string for the OCM resource

func (*OCM) GetConditions

func (o *OCM) GetConditions() *[]metav1.Condition

GetConditions returns the conditions of the OCM resource

func (*OCM) GetStatus

func (o *OCM) GetStatus() any

GetStatus returns the status of the OCM resource

func (*OCM) SetObservedGeneration

func (o *OCM) SetObservedGeneration(gen int64)

SetObservedGeneration sets the observed generation of the OCM resource

func (*OCM) SetPhase

func (o *OCM) SetPhase(phase string)

SetPhase sets the phase of the OCM resource status

type OCMList

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

OCMList contains a list of OCM

func (*OCMList) DeepCopy

func (in *OCMList) DeepCopy() *OCMList

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

func (*OCMList) DeepCopyInto

func (in *OCMList) DeepCopyInto(out *OCMList)

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

func (*OCMList) DeepCopyObject

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

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

type OCMSpec

type OCMSpec struct {
	// Version is the version of the controller to install.
	Version string `json:"version"`
}

OCMSpec defines the desired state of OCM

func (*OCMSpec) DeepCopy

func (in *OCMSpec) DeepCopy() *OCMSpec

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

func (*OCMSpec) DeepCopyInto

func (in *OCMSpec) DeepCopyInto(out *OCMSpec)

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

type OCMStatus

type OCMStatus struct {

	// conditions represent the current state of the OCM resource.
	// Each condition has a unique type and reflects the status of a specific aspect of the resource.
	//
	// Standard condition types include:
	// - "Available": the resource is fully functional
	// - "Progressing": the resource is being created or updated
	// - "Degraded": the resource failed to reach or maintain its desired state
	//
	// The status of each condition is one of True, False, or Unknown.
	// +listType=map
	// +listMapKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// ObservedGeneration is the generation of this resource that was last reconciled by the controller.
	ObservedGeneration int64 `json:"observedGeneration"`
	// Phase is the current phase of the resource.
	Phase string `json:"phase"`
	// Resources managed by this OCM instance.
	// +optional
	Resources []ManagedResource `json:"resources,omitempty"`
}

OCMStatus defines the observed state of OCM.

func (*OCMStatus) DeepCopy

func (in *OCMStatus) DeepCopy() *OCMStatus

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

func (*OCMStatus) DeepCopyInto

func (in *OCMStatus) DeepCopyInto(out *OCMStatus)

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

type ProviderConfig

type ProviderConfig struct {
	metav1.TypeMeta `json:",inline"`

	// metadata is a standard object metadata
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty,omitzero"`

	// spec defines the desired state of ProviderConfig
	// +required
	Spec ProviderConfigSpec `json:"spec"`

	// status defines the observed state of ProviderConfig
	// +optional
	Status ProviderConfigStatus `json:"status,omitempty,omitzero"`
}

ProviderConfig is the Schema for the providerconfigs API +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster +kubebuilder:metadata:labels="openmcp.cloud/cluster=platform"

func (*ProviderConfig) DeepCopy

func (in *ProviderConfig) DeepCopy() *ProviderConfig

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

func (*ProviderConfig) DeepCopyInto

func (in *ProviderConfig) DeepCopyInto(out *ProviderConfig)

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

func (*ProviderConfig) DeepCopyObject

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

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

func (*ProviderConfig) GetChartURL added in v0.0.7

func (o *ProviderConfig) GetChartURL() string

GetChartURL returns the configured chart URL or DefaultChartURL if unset. Nil-safe.

func (*ProviderConfig) GetImagePullSecret added in v0.0.7

func (o *ProviderConfig) GetImagePullSecret() *corev1.LocalObjectReference

GetImagePullSecret returns the image pull secret reference or nil if unset. Nil-safe.

func (*ProviderConfig) GetValues added in v0.0.7

func (o *ProviderConfig) GetValues() *apiextensionsv1.JSON

GetValues returns the Helm values or nil if unset. Nil-safe.

func (*ProviderConfig) PollInterval

func (o *ProviderConfig) PollInterval() time.Duration

PollInterval returns the poll interval duration from the spec.

type ProviderConfigList

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

ProviderConfigList contains a list of ProviderConfig

func (*ProviderConfigList) DeepCopy

func (in *ProviderConfigList) DeepCopy() *ProviderConfigList

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

func (*ProviderConfigList) DeepCopyInto

func (in *ProviderConfigList) DeepCopyInto(out *ProviderConfigList)

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

func (*ProviderConfigList) DeepCopyObject

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

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

type ProviderConfigSpec

type ProviderConfigSpec struct {
	// +optional
	// +kubebuilder:default:="1m"
	// +kubebuilder:validation:Format=duration
	PollInterval *metav1.Duration `json:"pollInterval,omitempty"`

	// ChartURL is the OCI URL of the Helm chart. Defaults to the official ocm-k8s-toolkit chart.
	// +optional
	ChartURL string `json:"chartURL,omitempty"`

	// Values are arbitrary Helm values passed directly to the managed HelmRelease.
	// +optional
	Values *apiextensionsv1.JSON `json:"values,omitempty"`

	// ImagePullSecret references a secret in the controller's namespace to replicate
	// into tenant namespaces and wire as secretRef on the OCIRepository.
	// +optional
	ImagePullSecret *corev1.LocalObjectReference `json:"imagePullSecret,omitempty"`
}

ProviderConfigSpec defines the desired state of ProviderConfig

func (*ProviderConfigSpec) DeepCopy

func (in *ProviderConfigSpec) DeepCopy() *ProviderConfigSpec

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

func (*ProviderConfigSpec) DeepCopyInto

func (in *ProviderConfigSpec) DeepCopyInto(out *ProviderConfigSpec)

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

type ProviderConfigStatus

type ProviderConfigStatus struct {

	// conditions represent the current state of the ProviderConfig resource.
	// Each condition has a unique type and reflects the status of a specific aspect of the resource.
	//
	// Standard condition types include:
	// - "Available": the resource is fully functional
	// - "Progressing": the resource is being created or updated
	// - "Degraded": the resource failed to reach or maintain its desired state
	//
	// The status of each condition is one of True, False, or Unknown.
	// +listType=map
	// +listMapKey=type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

ProviderConfigStatus defines the observed state of ProviderConfig.

func (*ProviderConfigStatus) DeepCopy

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

func (*ProviderConfigStatus) DeepCopyInto

func (in *ProviderConfigStatus) DeepCopyInto(out *ProviderConfigStatus)

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

type ResourceLocation added in v0.1.2

type ResourceLocation string

ResourceLocation is a custom type representing the location of a resource.

Jump to

Keyboard shortcuts

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