v2alpha1

package
v0.14.0 Latest Latest
Warning

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

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

Documentation

Overview

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

Index

Constants

View Source
const (
	// DefaultOIDCProviderName is the identifier for the default OIDC provider.
	DefaultOIDCProviderName = "openmcp"
	// DefaultMCPClusterPurpose is the default purpose for ManagedControlPlane clusters.
	DefaultMCPClusterPurpose = "mcp"
)
View Source
const (
	MCPNameLabel            = GroupName + "/mcp-name"
	MCPNamespaceLabel       = GroupName + "/mcp-namespace"
	OIDCProviderLabel       = GroupName + "/oidc-provider"
	MCPPurposeOverrideLabel = GroupName + "/purpose"

	// ManagedPurposeMCPPurposeOverride is used as value for the managed purpose label. It must not be modified.
	ManagedPurposeMCPPurposeOverride = "mcp-purpose-override"
	// ManagedPurposeOIDCProviderNameUniqueness is used as value for the managed purpose label. It must not be modified.
	ManagedPurposeOIDCProviderNameUniqueness = "oidc-provider-name-uniqueness"

	MCPFinalizer = GroupName + "/mcp"

	// ServiceDependencyFinalizerPrefix is the prefix for the dependency finalizers that are added to MCP resources by associated services.
	ServiceDependencyFinalizerPrefix = "services.openmcp.cloud/"
	// ClusterRequestFinalizerPrefix is the prefix for the finalizers that are added to MCP resources for cluster requests.
	ClusterRequestFinalizerPrefix = "request.clusters.openmcp.cloud/"
)
View Source
const (
	ConditionMeta = "Meta"

	ConditionClusterRequestReady       = "ClusterRequestReady"
	ConditionClusterConditionsSynced   = "ClusterConditionsSynced"
	ConditionPrefixClusterCondition    = "Cluster."
	ConditionPrefixOIDCAccessReady     = "OIDCAccessReady."
	ConditionAllAccessReady            = "AllAccessReady"
	ConditionAllServicesDeleted        = "AllServicesDeleted"
	ConditionAllClusterRequestsDeleted = "AllClusterRequestsDeleted"
)
View Source
const GroupName = "core.openmcp.cloud"

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v2alpha1"}

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

type IAMConfig struct {
	// RoleBindings is a list of subjects with (cluster) role bindings that should be created for them.
	// These bindings refer to the standard OIDC provider. If empty, the standard OIDC provider is disabled.
	// Note that the username prefix is added automatically to the subjects' names, it must not be explicitly specified here.
	// +optional
	RoleBindings []commonapi.RoleBindings `json:"roleBindings,omitempty"`

	// OIDCProviders is a list of OIDC providers that should be configured for the ManagedControlPlaneV2.
	// They are independent of the standard OIDC provider and in addition to it, unless it has been disabled by not specifying any role bindings.
	// +optional
	OIDCProviders []*commonapi.OIDCProviderConfig `json:"oidcProviders,omitempty"`
}

func (*IAMConfig) DeepCopy

func (in *IAMConfig) DeepCopy() *IAMConfig

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

func (*IAMConfig) DeepCopyInto

func (in *IAMConfig) DeepCopyInto(out *IAMConfig)

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

type ManagedControlPlaneV2

type ManagedControlPlaneV2 struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ManagedControlPlaneV2Spec   `json:"spec,omitempty"`
	Status            ManagedControlPlaneV2Status `json:"status,omitempty"`
}

func (*ManagedControlPlaneV2) DeepCopy

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

func (*ManagedControlPlaneV2) DeepCopyInto

func (in *ManagedControlPlaneV2) DeepCopyInto(out *ManagedControlPlaneV2)

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

func (*ManagedControlPlaneV2) DeepCopyObject

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

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

type ManagedControlPlaneV2List

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

func (*ManagedControlPlaneV2List) DeepCopy

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

func (*ManagedControlPlaneV2List) DeepCopyInto

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

func (*ManagedControlPlaneV2List) DeepCopyObject

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

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

type ManagedControlPlaneV2Spec

type ManagedControlPlaneV2Spec struct {
	// IAM contains the access management configuration for the ManagedControlPlaneV2.
	IAM IAMConfig `json:"iam"`
}

func (*ManagedControlPlaneV2Spec) DeepCopy

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

func (*ManagedControlPlaneV2Spec) DeepCopyInto

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

type ManagedControlPlaneV2Status

type ManagedControlPlaneV2Status struct {
	commonapi.Status `json:",inline"`

	// Access is a mapping from OIDC provider names to secret references.
	// Each referenced secret is expected to contain a 'kubeconfig' key with the kubeconfig that was generated for the respective OIDC provider for the ManagedControlPlaneV2.
	// The default OIDC provider, if configured, uses the name "default" in this mapping.
	// The "default" key is also used if the ClusterProvider does not support OIDC-based access and created a serviceaccount with a token instead.
	// +optional
	Access map[string]commonapi.LocalObjectReference `json:"access,omitempty"`
}

func (*ManagedControlPlaneV2Status) DeepCopy

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

func (*ManagedControlPlaneV2Status) DeepCopyInto

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