v1alpha1

package
v0.118.0 Latest Latest
Warning

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

Go to latest
Published: Nov 19, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 is a version of the API. +groupName=landscaper-service.gardener.cloud

Index

Constants

View Source
const (
	// ServiceTargetConfigVisibleLabelName label defines whether the ServiceTargetConfig is visible for scheduling.
	// If set to "true", any Landscaper Service deployment can be scheduled on this seed.
	// If not set or set to "false", no new Landscaper Service deployments can be scheduled on this seed.
	ServiceTargetConfigVisibleLabelName = "config.landscaper-service.gardener.cloud/visible"

	// LandscaperServiceFinalizer is the finalizer used for landscaper-service objects.
	LandscaperServiceFinalizer = "finalizer.landscaper-service.gardener.cloud"

	ShootTenantIDLabel          = "shoot.landscaper-service.gardener.cloud/tenantId"
	ShootInstanceNameLabel      = "shoot.landscaper-service.gardener.cloud/instanceName"
	ShootInstanceNamespaceLabel = "shoot.landscaper-service.gardener.cloud/instanceNamespace"
	ShootInstanceIDLabel        = "shoot.landscaper-service.gardener.cloud/instanceId"

	// LandscaperServiceOperationAnnotation is the operation annotation.
	LandscaperServiceOperationAnnotation = "landscaper-service.gardener.cloud/operation"
	// LandscaperServiceOperationIgnore can be set as the landscaper service operation annotation.
	// When set at landscaper deployments, the annotation will be inherited to the corresponding instance
	// and prevents its reconciliation until removed.
	LandscaperServiceOperationIgnore = "ignore"

	LandscaperServiceOnDeleteStrategyAnnotation                             = "landscaper-service.gardener.cloud/on-delete-strategy"
	LandscaperServiceOnDeleteStrategyDeleteAllInstallations                 = "delete-all-installations"
	LandscaperServiceOnDeleteStrategyDeleteAllInstallationsWithoutUninstall = "delete-all-installations-without-uninstall"
)
View Source
const (
	LandscaperDeploymentDataPlaneTypeExternal = "External"
	LandscaperDeploymentDataPlaneTypeInternal = "Internal"
)

Variables

View Source
var (
	// SchemeBuilder is a new Schema Builder which registers our API.
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultsFuncs)
	// AddToScheme is a reference to the Schema Builder's AddToScheme function.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: core.GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func RegisterDefaults

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

func SetDefaults_AvailabilityCollection

func SetDefaults_AvailabilityCollection(_ *AvailabilityCollection)

func SetDefaults_Instance

func SetDefaults_Instance(_ *Instance)

SetDefaults_Instance sets the default values for Instance objects

func SetDefaults_LandscaperDeployment

func SetDefaults_LandscaperDeployment(_ *LandscaperDeployment)

SetDefaults_LandscaperDeployment sets the default values for LandscaperDeployment objects

func SetDefaults_ServiceTargetConfig

func SetDefaults_ServiceTargetConfig(obj *ServiceTargetConfig)

SetDefaults_ServiceTargetConfig sets the default values for ServiceTargetConfig objects

func SetObjectDefaults_AvailabilityCollection

func SetObjectDefaults_AvailabilityCollection(in *AvailabilityCollection)

func SetObjectDefaults_AvailabilityCollectionList

func SetObjectDefaults_AvailabilityCollectionList(in *AvailabilityCollectionList)

func SetObjectDefaults_Instance

func SetObjectDefaults_Instance(in *Instance)

func SetObjectDefaults_InstanceList

func SetObjectDefaults_InstanceList(in *InstanceList)

func SetObjectDefaults_LandscaperDeployment

func SetObjectDefaults_LandscaperDeployment(in *LandscaperDeployment)

func SetObjectDefaults_LandscaperDeploymentList

func SetObjectDefaults_LandscaperDeploymentList(in *LandscaperDeploymentList)

func SetObjectDefaults_ServiceTargetConfig

func SetObjectDefaults_ServiceTargetConfig(in *ServiceTargetConfig)

func SetObjectDefaults_ServiceTargetConfigList

func SetObjectDefaults_ServiceTargetConfigList(in *ServiceTargetConfigList)

Types

type AutomaticReconcile

type AutomaticReconcile struct {
	// Interval specifies the interval after which the instance is being automatically reconciled.
	//+kubebuilder:validation:Type=string
	//+kubebuilder:validation:Schemaless
	Interval lsv1alpha1.Duration `json:"interval"`
}

AutomaticReconcile defines the automatic reconcile configuration.

func (*AutomaticReconcile) DeepCopy

func (in *AutomaticReconcile) DeepCopy() *AutomaticReconcile

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

func (*AutomaticReconcile) DeepCopyInto

func (in *AutomaticReconcile) DeepCopyInto(out *AutomaticReconcile)

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

type AvailabilityCollection

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

	// Spec contains the specification for the AvailabilityCollection.
	Spec AvailabilityCollectionSpec `json:"spec"`

	// Status contains the status for the AvailabilityCollection.
	// +optional
	Status AvailabilityCollectionStatus `json:"status"`
}

AvailabilityCollection is created/updated by the AvailabilityMonitoringRegistrationController. It contains a list of references to Instances that should be monitored for availability. +kubebuilder:resource:singular="availabilitycollection",path="availabilitycollections",shortName="avcol",scope="Namespaced" +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Last Run",type=date,JSONPath=`.status.lastRun` +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`

func (*AvailabilityCollection) DeepCopy

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

func (*AvailabilityCollection) DeepCopyInto

func (in *AvailabilityCollection) DeepCopyInto(out *AvailabilityCollection)

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

func (*AvailabilityCollection) DeepCopyObject

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

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

type AvailabilityCollectionList

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

AvailabilityCollectionList contains a list of AvailabilityCollection

func (*AvailabilityCollectionList) DeepCopy

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

func (*AvailabilityCollectionList) DeepCopyInto

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

func (*AvailabilityCollectionList) DeepCopyObject

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

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

type AvailabilityCollectionSpec

type AvailabilityCollectionSpec struct {
	// InstanceRefs specifies all instances to monitor
	InstanceRefs []ObjectReference `json:"instanceRefs"`
}

AvailabilityCollectionSpec contains the spec for the AvailabilityCollection.

func (*AvailabilityCollectionSpec) DeepCopy

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

func (*AvailabilityCollectionSpec) DeepCopyInto

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

type AvailabilityCollectionStatus

type AvailabilityCollectionStatus struct {
	// metadata.generation observed by the HealthWatcher controller.
	// Used to distinguish between a necessary reconcile (scheduled or spec change)
	// and unnecessary reconcile (status change)
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`

	// LastRun is the last time, the HealthWatcher collected all instance status.
	// +optional
	LastRun metav1.Time `json:"lastRun"`

	// LastReported is the last time, the AV Uploader uploaded all instance status. Prevents multi upload of the same status.
	// +optional
	LastReported metav1.Time `json:"lastReported"`

	// Instances collects the status for all instances specified in spec.instanceRefs
	Instances []AvailabilityInstance `json:"instances"`

	// Self collects the status the own landscaper
	Self AvailabilityInstance `json:"self"`
}

AvailabilityCollectionStatus contains the status for the AvailabilityCollection.

func (*AvailabilityCollectionStatus) DeepCopy

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

func (*AvailabilityCollectionStatus) DeepCopyInto

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

type AvailabilityInstance

type AvailabilityInstance struct {
	ObjectReference `json:",inline"`
	// Status is the availability status of the instance.
	Status string `json:"status"`
	// FailedReason is the reason the status is in failed.
	FailedReason string `json:"failedReason"`

	// FailedSince contains the timestamp since the object is in failed status
	// +optional
	FailedSince *metav1.Time `json:"failedSince,omitempty"`
}

AvailabilityInstance contains the availability status for one instance.

func (*AvailabilityInstance) DeepCopy

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

func (*AvailabilityInstance) DeepCopyInto

func (in *AvailabilityInstance) DeepCopyInto(out *AvailabilityInstance)

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

func (*AvailabilityInstance) SetStatusAndFailedSince

func (r *AvailabilityInstance) SetStatusAndFailedSince(status v1alpha1.LsHealthCheckStatus, failedReason string, initOrContinueFailed bool)

type Controller

type Controller struct {
	Workers int32 `json:"workers,omitempty"`
}

Controller specifies the config for a landscaper controller.

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 Controllers

type Controllers struct {
	Installations *Controller `json:"installations,omitempty"`
	Executions    *Controller `json:"executions,omitempty"`
}

Controllers specifies the config for the "main" landscaper controllers, i.e. the installation and execution controller.

func (*Controllers) DeepCopy

func (in *Controllers) DeepCopy() *Controllers

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

func (*Controllers) DeepCopyInto

func (in *Controllers) DeepCopyInto(out *Controllers)

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

type DataPlane

type DataPlane struct {
	// SecretRef references a secret containing the Kubernetes config
	// +optional
	SecretRef *SecretReference `json:"secretRef"`
	// Kubeconfig contains the content of the Kubernetes config
	// +optional
	Kubeconfig string `json:"kubeconfig"`
}

DataPlane references an externally create data plane Kubernetes cluster

func (*DataPlane) DeepCopy

func (in *DataPlane) DeepCopy() *DataPlane

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

func (*DataPlane) DeepCopyInto

func (in *DataPlane) DeepCopyInto(out *DataPlane)

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

type DeployItemTimeouts

type DeployItemTimeouts struct {
	Pickup             string `json:"pickup,omitempty"`
	ProgressingDefault string `json:"progressingDefault,omitempty"`
}

DeployItemTimeouts configures the timeout controller.

func (*DeployItemTimeouts) DeepCopy

func (in *DeployItemTimeouts) DeepCopy() *DeployItemTimeouts

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

func (*DeployItemTimeouts) DeepCopyInto

func (in *DeployItemTimeouts) DeepCopyInto(out *DeployItemTimeouts)

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

type Deployer

type Deployer struct {
	Controller        *Controller        `json:"controller,omitempty"`
	K8SClientSettings *K8SClientSettings `json:"k8sClientSettings,omitempty"`
}

func (*Deployer) DeepCopy

func (in *Deployer) DeepCopy() *Deployer

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

func (*Deployer) DeepCopyInto

func (in *Deployer) DeepCopyInto(out *Deployer)

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

type DeployerConfig

type DeployerConfig struct {
	Deployer  *Deployer  `json:"deployer,omitempty"`
	Resources *Resources `json:"resources,omitempty"`
	HPA       *HPA       `json:"hpa,omitempty"`
}

DeployerConfig configures a deployer.

func (*DeployerConfig) DeepCopy

func (in *DeployerConfig) DeepCopy() *DeployerConfig

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

func (*DeployerConfig) DeepCopyInto

func (in *DeployerConfig) DeepCopyInto(out *DeployerConfig)

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

type Error

type Error struct {
	// Operation describes the operator where the error occurred.
	Operation string `json:"operation"`

	// Last time the condition transitioned from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`

	// Last time the condition was updated.
	LastUpdateTime metav1.Time `json:"lastUpdateTime"`

	// The reason for the condition's last transition.
	Reason string `json:"reason"`

	// A human-readable message indicating details about the transition.
	Message string `json:"message"`
}

Error holds information about an error that occurred.

func (*Error) DeepCopy

func (in *Error) DeepCopy() *Error

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

func (*Error) DeepCopyInto

func (in *Error) DeepCopyInto(out *Error)

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

type HPA

type HPA struct {
	MaxReplicas              int32 `json:"maxReplicas,omitempty"`
	AverageMemoryUtilization int32 `json:"averageMemoryUtilization,omitempty"`
	AverageCpuUtilization    int32 `json:"averageCpuUtilization,omitempty"`
}

HPA configures the horizontal pod autoscaling of pods.

func (*HPA) DeepCopy

func (in *HPA) DeepCopy() *HPA

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

func (*HPA) DeepCopyInto

func (in *HPA) DeepCopyInto(out *HPA)

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

type HighAvailabilityConfig

type HighAvailabilityConfig struct {
	// ControlPlaneFailureTolerance specifies the Kubernetes control plane failure tolerance mode.
	// Allowed values are: node, zone
	ControlPlaneFailureTolerance string `json:"controlPlaneFailureTolerance"`
}

HighAvailabilityConfig specifies the HA configuration for the resource cluster (shoot cluster)

func (*HighAvailabilityConfig) DeepCopy

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

func (*HighAvailabilityConfig) DeepCopyInto

func (in *HighAvailabilityConfig) DeepCopyInto(out *HighAvailabilityConfig)

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

type Instance

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

	// Spec contains the specification for the Instance.
	Spec InstanceSpec `json:"spec"`

	// Status contains the status for the Instance.
	// +optional
	Status InstanceStatus `json:"status"`
}

The Instance is created for each LandscaperDeployment. The landscaper service controller selects a suitable/available ServiceTargetConfig and creates an Installation. +kubebuilder:resource:singular="instance",path="instances",shortName="instc",scope="Namespaced" +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="ServiceTargetConfig",type=string,JSONPath=`.spec.serviceTargetConfigRef.name` +kubebuilder:printcolumn:name="Installation",type=string,JSONPath=`.status.installationRef.name` +kubebuilder:printcolumn:name="Phase",type=string,JSONPath=`.status.phase` +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`

func (*Instance) DeepCopy

func (in *Instance) DeepCopy() *Instance

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

func (*Instance) DeepCopyInto

func (in *Instance) DeepCopyInto(out *Instance)

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

func (*Instance) DeepCopyObject

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

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

func (*Instance) IsExternalDataPlane

func (ld *Instance) IsExternalDataPlane() bool

func (*Instance) IsInternalDataPlane

func (ld *Instance) IsInternalDataPlane() bool

type InstanceList

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

InstanceList contains a list of Instance

func (*InstanceList) DeepCopy

func (in *InstanceList) DeepCopy() *InstanceList

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

func (*InstanceList) DeepCopyInto

func (in *InstanceList) DeepCopyInto(out *InstanceList)

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

func (*InstanceList) DeepCopyObject

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

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

type InstanceSpec

type InstanceSpec struct {
	// TenantId is the unique identifier of the owning tenant.
	TenantId string `json:"tenantId"`

	// ID is the id of this instance
	ID string `json:"id"`

	// LandscaperConfiguration contains the configuration for the landscaper service deployment
	LandscaperConfiguration LandscaperConfiguration `json:"landscaperConfiguration"`

	// ServiceTargetConfigRef specifies the target cluster for which the installation is created.
	ServiceTargetConfigRef ObjectReference `json:"serviceTargetConfigRef"`

	// OIDCConfig describes the OIDC config of the customer resource cluster (shoot cluster)
	// +optional
	OIDCConfig *OIDCConfig `json:"oidcConfig,omitempty"`

	// AutomaticReconcile specifies the configuration on when this instance is being automatically reconciled.
	// +optional
	AutomaticReconcile *AutomaticReconcile `json:"automaticReconcile,omitempty"`

	// HighAvailabilityConfig specifies the HA configuration of the resource cluster (shoot cluster)
	// +optional
	HighAvailabilityConfig *HighAvailabilityConfig `json:"highAvailabilityConfig"`

	// DataPlane references an externally created and maintained Kubernetes cluster,
	// used as the data plane where Landscaper resources are stored.
	// When DataPlane is defined, the Landscaper Service controller will no longer
	// create its own Kubernetes cluster.
	// +optional
	DataPlane *DataPlane `json:"dataPlane,omitempty"`
}

InstanceSpec contains the specification for an Instance.

func (*InstanceSpec) DeepCopy

func (in *InstanceSpec) DeepCopy() *InstanceSpec

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

func (*InstanceSpec) DeepCopyInto

func (in *InstanceSpec) DeepCopyInto(out *InstanceSpec)

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

type InstanceStatus

type InstanceStatus struct {
	// ObservedGeneration is the most recent generation observed for this Instance.
	// It corresponds to the Instance generation, which is updated on mutation by the landscaper service controller.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration"`

	// LastError describes the last error that occurred.
	// +optional
	LastError *Error `json:"lastError,omitempty"`

	// LandscaperServiceComponent define the landscaper server component that is used for this instance.
	// +optional
	LandscaperServiceComponent *LandscaperServiceComponent `json:"landscaperServiceComponent,omitempty"`

	// ContextRef references the landscaper context for this Instance.
	// +optional
	ContextRef *ObjectReference `json:"contextRef,omitempty"`

	// TargetRef references the Target for this Instance.
	// +optional
	TargetRef *ObjectReference `json:"targetRef,omitempty"`

	// GardenerServiceAccountRef references the Target for the Gardener service account.
	// +optional
	GardenerServiceAccountRef *ObjectReference `json:"gardenerServiceAccountRef,omitempty"`

	// InstallationRef references the Installation for this Instance.
	// +optional
	InstallationRef *ObjectReference `json:"installationRef,omitempty"`

	// ClusterEndpointRef contains the URL at which the landscaper cluster is accessible.
	// +optional
	ClusterEndpoint string `json:"clusterEndpoint,omitempty"`

	// UserKubeconfig contains the user kubeconfig which can be used for accessing the landscaper cluster.
	// +optional
	UserKubeconfig string `json:"userKubeconfig,omitempty"`

	// AdminKubeconfig contains the admin kubeconfig which can be used for accessing the landscaper cluster.
	// +optional
	AdminKubeconfig string `json:"adminKubeconfig,omitempty"`

	// ShootName is the name of the corresponding shoot cluster.
	// +optional
	ShootName string `json:"shootName,omitempty"`

	// ShootNamespace is the namespace in which the shoot resource is being created.
	// +optional
	ShootNamespace string `json:"shootNamespace,omitempty"`

	// Reference to the external data plane cluster target.
	// +optional
	ExternalDataPlaneClusterRef *ObjectReference `json:"externalDataPlaneClusterRef,omitempty"`

	// Phase represents the phase of the corresponding Landscaper Instance Installation phase.
	// +optional
	Phase string `json:"phase,omitempty"`
}

InstanceStatus contains the status for an Instance.

func (*InstanceStatus) DeepCopy

func (in *InstanceStatus) DeepCopy() *InstanceStatus

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

func (*InstanceStatus) DeepCopyInto

func (in *InstanceStatus) DeepCopyInto(out *InstanceStatus)

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

type K8SClientLimits

type K8SClientLimits struct {
	Burst int32 `json:"burst,omitempty"`
	QPS   int32 `json:"qps,omitempty"`
}

K8SClientLimits specifies the settings for a k8s client.

func (*K8SClientLimits) DeepCopy

func (in *K8SClientLimits) DeepCopy() *K8SClientLimits

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

func (*K8SClientLimits) DeepCopyInto

func (in *K8SClientLimits) DeepCopyInto(out *K8SClientLimits)

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

type K8SClientSettings

type K8SClientSettings struct {
	HostClient     *K8SClientLimits `json:"hostClient,omitempty"`
	ResourceClient *K8SClientLimits `json:"resourceClient,omitempty"`
}

K8SClientSettings specifies the settings for the k8s clients which landscaper uses to access host and resource cluster.

func (*K8SClientSettings) DeepCopy

func (in *K8SClientSettings) DeepCopy() *K8SClientSettings

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

func (*K8SClientSettings) DeepCopyInto

func (in *K8SClientSettings) DeepCopyInto(out *K8SClientSettings)

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

type LabelSelector

type LabelSelector struct {
	Name  string `json:"name,omitempty"`
	Value string `json:"value,omitempty"`
}

func (*LabelSelector) DeepCopy

func (in *LabelSelector) DeepCopy() *LabelSelector

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

func (*LabelSelector) DeepCopyInto

func (in *LabelSelector) DeepCopyInto(out *LabelSelector)

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

type Landscaper

type Landscaper struct {
	Controllers        *Controllers        `json:"controllers,omitempty"`
	K8SClientSettings  *K8SClientSettings  `json:"k8sClientSettings,omitempty"`
	DeployItemTimeouts *DeployItemTimeouts `json:"deployItemTimeouts,omitempty"`
	UseOCMLib          bool                `json:"useOCMLib,omitempty"`
}

func (*Landscaper) DeepCopy

func (in *Landscaper) DeepCopy() *Landscaper

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

func (*Landscaper) DeepCopyInto

func (in *Landscaper) DeepCopyInto(out *Landscaper)

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

type LandscaperConfiguration

type LandscaperConfiguration struct {
	// +optional
	Landscaper *Landscaper `json:"landscaper,omitempty"`
	// Resources configures the resources of the "central" landscaper pod, i.e. the pod responsible for crds creation,
	// deployer management, context controller.
	// +optional
	Resources *Resources `json:"resources,omitempty"`
	// ResourcesMain configures the resources of the "main" landscaper pods, i.e. the pods of installation and execution controller.
	// +optional
	ResourcesMain *Resources `json:"resourcesMain,omitempty"`
	// HPAMain configures the horizontal pod autoscaling of the "main" landscaper pods, i.e. the pods of installation and execution controller.
	// +optional
	HPAMain *HPA `json:"hpaMain,omitempty"`
	// Deployers is the list of deployers that are getting installed alongside with this Instance.
	Deployers []string `json:"deployers"`
	// DeployersConfig specifies the configuration for the landscaper standard deployers.
	// +optional
	DeployersConfig map[string]*DeployerConfig `json:"deployersConfig,omitempty"`
}

LandscaperConfiguration contains the configuration for a landscaper service deployment.

func (*LandscaperConfiguration) DeepCopy

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

func (*LandscaperConfiguration) DeepCopyInto

func (in *LandscaperConfiguration) DeepCopyInto(out *LandscaperConfiguration)

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

type LandscaperDeployment

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

	// Spec contains the specification for the LandscaperDeployment
	Spec LandscaperDeploymentSpec `json:"spec"`

	// Status contains the status of the LandscaperDeployment.
	// +optional
	Status LandscaperDeploymentStatus `json:"status"`
}

The LandscaperDeployment is created to define a deployment of the landscaper. +kubebuilder:resource:singular="landscaperdeployment",path="landscaperdeployments",shortName="lsdepl",scope="Namespaced" +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="DataPlaneType",type=string,JSONPath=`.status.dataPlaneType` +kubebuilder:printcolumn:name="Instance",type=string,JSONPath=`.status.instanceRef.name` +kubebuilder:printcolumn:name="Phase",type=string,JSONPath=`.status.phase` +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`

func (*LandscaperDeployment) DeepCopy

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

func (*LandscaperDeployment) DeepCopyInto

func (in *LandscaperDeployment) DeepCopyInto(out *LandscaperDeployment)

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

func (*LandscaperDeployment) DeepCopyObject

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

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

func (*LandscaperDeployment) IsExternalDataPlane

func (ld *LandscaperDeployment) IsExternalDataPlane() bool

func (*LandscaperDeployment) IsInternalDataPlane

func (ld *LandscaperDeployment) IsInternalDataPlane() bool

type LandscaperDeploymentList

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

LandscaperDeploymentList contains a list of LandscaperDeployment

func (*LandscaperDeploymentList) DeepCopy

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

func (*LandscaperDeploymentList) DeepCopyInto

func (in *LandscaperDeploymentList) DeepCopyInto(out *LandscaperDeploymentList)

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

func (*LandscaperDeploymentList) DeepCopyObject

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

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

type LandscaperDeploymentSpec

type LandscaperDeploymentSpec struct {
	// TenantId is the unique identifier of the owning tenant.
	TenantId string `json:"tenantId"`

	// Purpose contains the purpose of this LandscaperDeployment.
	Purpose string `json:"purpose"`

	// LandscaperConfiguration contains the configuration for the landscaper service deployment
	LandscaperConfiguration LandscaperConfiguration `json:"landscaperConfiguration"`

	// OIDCConfig describes the OIDC config of the customer resource cluster (shoot cluster)
	// +optional
	OIDCConfig *OIDCConfig `json:"oidcConfig,omitempty"`

	// HighAvailabilityConfig specifies the HA configuration of the resource cluster (shoot cluster)
	// +optional
	HighAvailabilityConfig *HighAvailabilityConfig `json:"highAvailabilityConfig,omitempty"`

	// DataPlane references an externally created and maintained Kubernetes cluster,
	// used as the data plane where Landscaper resources are stored.
	// When DataPlane is defined, the Landscaper Service controller will no longer
	// create its own Kubernetes cluster.
	// +optional
	DataPlane *DataPlane `json:"dataPlane,omitempty"`
}

LandscaperDeploymentSpec contains the specification for a LandscaperDeployment.

func (*LandscaperDeploymentSpec) DeepCopy

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

func (*LandscaperDeploymentSpec) DeepCopyInto

func (in *LandscaperDeploymentSpec) DeepCopyInto(out *LandscaperDeploymentSpec)

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

type LandscaperDeploymentStatus

type LandscaperDeploymentStatus struct {
	// ObservedGeneration is the most recent generation observed for this LandscaperDeployment.
	// It corresponds to the LandscaperDeployment generation, which is updated on mutation by the landscaper service controller.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration"`

	// LastError describes the last error that occurred.
	// +optional
	LastError *Error `json:"lastError,omitempty"`

	// InstanceRef references the instance that is created for this LandscaperDeployment.
	// +optional
	InstanceRef *ObjectReference `json:"instanceRef"`

	// Phase represents the phase of the corresponding Landscaper Instance Installation phase.
	// +optional
	Phase string `json:"phase,omitempty"`

	// DataPlaneType shows whether this deployment has an internal or external data plane cluster.
	// +optional
	DataPlaneType string `json:"dataPlaneType,omitempty"`
}

LandscaperDeploymentStatus contains the status of a LandscaperDeployment.

func (*LandscaperDeploymentStatus) DeepCopy

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

func (*LandscaperDeploymentStatus) DeepCopyInto

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

type LandscaperServiceComponent

type LandscaperServiceComponent struct {
	// Name defines the component name of the landscaper service component.
	Name string `json:"name"`

	// Version defines the version of the landscaper service component.
	Version string `json:"version"`
}

LandscaperServiceComponent defines the landscaper service component that is being used.

func (*LandscaperServiceComponent) DeepCopy

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

func (*LandscaperServiceComponent) DeepCopyInto

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

type NamespaceRegistration

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

	// Spec contains the specification for the NamespaceRegistration.
	Spec NamespaceRegistrationSpec `json:"spec"`

	// Status contains the status for the NamespaceRegistration.
	// +optional
	Status NamespaceRegistrationStatus `json:"status"`
}

+kubebuilder:resource:singular="namespaceregistration",path="namespaceregistrations",shortName="nsreg",scope="Namespaced" +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Phase",type=string,JSONPath=`.status.phase`

func (*NamespaceRegistration) DeepCopy

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

func (*NamespaceRegistration) DeepCopyInto

func (in *NamespaceRegistration) DeepCopyInto(out *NamespaceRegistration)

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

func (*NamespaceRegistration) DeepCopyObject

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

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

type NamespaceRegistrationList

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

NamespaceRegistrationList contains a list of NamespaceRegistration

func (*NamespaceRegistrationList) DeepCopy

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

func (*NamespaceRegistrationList) DeepCopyInto

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

func (*NamespaceRegistrationList) DeepCopyObject

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

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

type NamespaceRegistrationSpec

type NamespaceRegistrationSpec struct {
}

func (*NamespaceRegistrationSpec) DeepCopy

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

func (*NamespaceRegistrationSpec) DeepCopyInto

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

type NamespaceRegistrationStatus

type NamespaceRegistrationStatus struct {
	Phase string `json:"phase"`
	// +optional
	LastError *Error `json:"lastError,omitempty"`
}

func (*NamespaceRegistrationStatus) DeepCopy

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

func (*NamespaceRegistrationStatus) DeepCopyInto

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

type OIDCConfig

type OIDCConfig struct {
	ClientID      string `json:"clientID,omitempty"`
	IssuerURL     string `json:"issuerURL,omitempty"`
	UsernameClaim string `json:"usernameClaim,omitempty"`
	GroupsClaim   string `json:"groupsClaim,omitempty"`
}

OIDCConfig defines the OIDC configuration

func (*OIDCConfig) DeepCopy

func (in *OIDCConfig) DeepCopy() *OIDCConfig

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

func (*OIDCConfig) DeepCopyInto

func (in *OIDCConfig) DeepCopyInto(out *OIDCConfig)

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

type ObjectReference

type ObjectReference struct {
	// Name is the name of the kubernetes object.
	Name string `json:"name"`

	// Namespace is the namespace of kubernetes object.
	// +optional
	Namespace string `json:"namespace"`
}

ObjectReference is the reference to a kubernetes object.

func (*ObjectReference) DeepCopy

func (in *ObjectReference) DeepCopy() *ObjectReference

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

func (*ObjectReference) DeepCopyInto

func (in *ObjectReference) DeepCopyInto(out *ObjectReference)

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

func (*ObjectReference) Equals

func (r *ObjectReference) Equals(other *ObjectReference) bool

Equals test whether this object reference equals the given object reference.

func (*ObjectReference) IsEmpty

func (r *ObjectReference) IsEmpty() bool

IsEmpty checks whether this reference has an empty name or empty namespace.

func (*ObjectReference) IsObject

func (r *ObjectReference) IsObject(o metav1.Object) bool

IsObject tests whether this object reference references the given object.

func (*ObjectReference) NamespacedName

func (r *ObjectReference) NamespacedName() types.NamespacedName

NamespacedName returns the namespaced name for the object reference.

type ResourceRequests

type ResourceRequests struct {
	CPU    string `json:"cpu,omitempty"`
	Memory string `json:"memory,omitempty"`
}

func (*ResourceRequests) DeepCopy

func (in *ResourceRequests) DeepCopy() *ResourceRequests

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

func (*ResourceRequests) DeepCopyInto

func (in *ResourceRequests) DeepCopyInto(out *ResourceRequests)

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

type Resources

type Resources struct {
	Requests ResourceRequests `json:"requests,omitempty"`
}

Resources configures the resources of pods (requested cpu and memory)

func (*Resources) DeepCopy

func (in *Resources) DeepCopy() *Resources

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

func (*Resources) DeepCopyInto

func (in *Resources) DeepCopyInto(out *Resources)

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

type SchedulingRule

type SchedulingRule struct {

	// The Priority of this SchedulingRule.
	// SchedulingRules with a higher priority number will be preferred over SchedulingRules with a lower priority number.
	Priority int64 `json:"priority,omitempty"`

	ServiceTargetConfigs []ObjectReference `json:"serviceTargetConfigs,omitempty"`

	Selector []Selector `json:"selector,omitempty"`
}

func (*SchedulingRule) DeepCopy

func (in *SchedulingRule) DeepCopy() *SchedulingRule

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

func (*SchedulingRule) DeepCopyInto

func (in *SchedulingRule) DeepCopyInto(out *SchedulingRule)

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

type SecretReference

type SecretReference struct {
	ObjectReference `json:",inline"`

	// Key is the name of the key in the secret that holds the data.
	// +optional
	Key string `json:"key"`
}

SecretReference is a reference to data in a secret.

func (*SecretReference) DeepCopy

func (in *SecretReference) DeepCopy() *SecretReference

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

func (*SecretReference) DeepCopyInto

func (in *SecretReference) DeepCopyInto(out *SecretReference)

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

type Selector

type Selector struct {

	// +optional
	MatchTenant *TenantSelector `json:"matchTenant,omitempty"`

	// +optional
	MatchLabel *LabelSelector `json:"matchLabel,omitempty"`

	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	// +optional
	Or []Selector `json:"or,omitempty"`

	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	// +optional
	And []Selector `json:"and,omitempty"`

	// +kubebuilder:pruning:PreserveUnknownFields
	// +kubebuilder:validation:Schemaless
	// +optional
	Not *Selector `json:"not,omitempty"`
}

func (*Selector) DeepCopy

func (in *Selector) DeepCopy() *Selector

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

func (*Selector) DeepCopyInto

func (in *Selector) DeepCopyInto(out *Selector)

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

type ServiceTargetConfig

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

	// Spec contains the specification for the ServiceTargetConfig
	Spec ServiceTargetConfigSpec `json:"spec"`

	// Status contains the status of the ServiceTargetConfig.
	// +optional
	Status ServiceTargetConfigStatus `json:"status"`
}

The ServiceTargetConfig is created to define the configuration for a Kubernetes cluster, that can host Landscaper Service deployments. +kubebuilder:resource:singular="servicetargetconfig",path="servicetargetconfigs",shortName="servcfg",scope="Namespaced" +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Visible",type=string,JSONPath=`.metadata.labels.config\.landscaper-service\.gardener\.cloud/visible` +kubebuilder:printcolumn:name="Priority",type=number,JSONPath=`.spec.priority` +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`

func (*ServiceTargetConfig) DeepCopy

func (in *ServiceTargetConfig) DeepCopy() *ServiceTargetConfig

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

func (*ServiceTargetConfig) DeepCopyInto

func (in *ServiceTargetConfig) DeepCopyInto(out *ServiceTargetConfig)

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

func (*ServiceTargetConfig) DeepCopyObject

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

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

type ServiceTargetConfigList

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

ServiceTargetConfigList contains a list of ServiceTargetConfig

func (*ServiceTargetConfigList) DeepCopy

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

func (*ServiceTargetConfigList) DeepCopyInto

func (in *ServiceTargetConfigList) DeepCopyInto(out *ServiceTargetConfigList)

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

func (*ServiceTargetConfigList) DeepCopyObject

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

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

type ServiceTargetConfigSpec

type ServiceTargetConfigSpec struct {

	// The Priority of this ServiceTargetConfig.
	// SeedConfigs with a higher priority number will be preferred over lower numbers
	// when scheduling new landscaper service installations.
	Priority int64 `json:"priority"`

	// A restricted ServiceTargetConfig can only be selected according to scheduling rules.
	Restricted bool `json:"restricted,omitempty"`

	// SecretRef references the secret that contains the kubeconfig of the target cluster.
	SecretRef SecretReference `json:"secretRef"`

	// IngressDomain is the ingress domain of the corresponding target cluster.
	IngressDomain string `json:"ingressDomain"`
}

ServiceTargetConfigSpec contains the specification for a ServiceTargetConfig.

func (*ServiceTargetConfigSpec) DeepCopy

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

func (*ServiceTargetConfigSpec) DeepCopyInto

func (in *ServiceTargetConfigSpec) DeepCopyInto(out *ServiceTargetConfigSpec)

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

type ServiceTargetConfigStatus

type ServiceTargetConfigStatus struct {
	// ObservedGeneration is the most recent generation observed for this ServiceTargetConfig.
	// It corresponds to the ServiceTargetConfig generation, which is updated on mutation by the landscaper service controller.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration"`

	// InstanceRefs is the list of references to instances that use this ServiceTargetConfig.
	// +optional
	InstanceRefs []ObjectReference `json:"instanceRefs,omitempty"`
}

ServiceTargetConfigStatus contains the status of a ServiceTargetConfig.

func (*ServiceTargetConfigStatus) DeepCopy

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

func (*ServiceTargetConfigStatus) DeepCopyInto

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

type Subject

type Subject struct {
	// Kind of object being referenced. Values defined by this API group are "User", "Group", and "ServiceAccount".
	// If the Authorizer does not recognized the kind value, the Authorizer should report an error.
	Kind string `json:"kind"`
	// Name of the object being referenced.
	Name string `json:"name"`
	// Namespace of the referenced object.  If the object kind is non-namespace, such as "User" or "Group", and this value is not empty
	// the Authorizer should report an error.
	// +optional
	Namespace string `json:"namespace,omitempty"`
}

Subject is a User, Group or ServiceAccount(with namespace). Similar to rbac.Subject struct but does not depend on it to prevent future k8s version from breaking this logic.

func (*Subject) DeepCopy

func (in *Subject) DeepCopy() *Subject

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

func (*Subject) DeepCopyInto

func (in *Subject) DeepCopyInto(out *Subject)

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

type SubjectList

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

	// Spec contains the specification for the SubjectList.
	Spec SubjectListSpec `json:"spec"`

	// Status contains the status for the SubjectList.
	// +optional
	Status SubjectListStatus `json:"status"`
}

+kubebuilder:resource:singular="subjectlist",path="subjectlists",shortName="sulist",scope="Namespaced" +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Age",type=date,JSONPath=`.metadata.creationTimestamp`

func (*SubjectList) DeepCopy

func (in *SubjectList) DeepCopy() *SubjectList

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

func (*SubjectList) DeepCopyInto

func (in *SubjectList) DeepCopyInto(out *SubjectList)

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

func (*SubjectList) DeepCopyObject

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

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

type SubjectListList

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

NamespaceRegistrationList contains a list of NamespaceRegistration

func (*SubjectListList) DeepCopy

func (in *SubjectListList) DeepCopy() *SubjectListList

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

func (*SubjectListList) DeepCopyInto

func (in *SubjectListList) DeepCopyInto(out *SubjectListList)

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

func (*SubjectListList) DeepCopyObject

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

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

type SubjectListSpec

type SubjectListSpec struct {
	//Subject contains a reference to the object or user identities a role binding applies to.
	Subjects []Subject `json:"subjects"`
	//ViewerSubjects contains a reference to the object or user identities a role binding applies to.
	// + optional
	ViewerSubjects []Subject `json:"viewerSubjects,omitempty"`
}

SubjectListSpec contains the specification for the SubjectList.

func (*SubjectListSpec) DeepCopy

func (in *SubjectListSpec) DeepCopy() *SubjectListSpec

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

func (*SubjectListSpec) DeepCopyInto

func (in *SubjectListSpec) DeepCopyInto(out *SubjectListSpec)

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

type SubjectListStatus

type SubjectListStatus struct {
	Phase              string `json:"phase"`
	ObservedGeneration int64  `json:"observedGeneration"`
}

SubjectListStatus contains the status for the SubjectList.

func (*SubjectListStatus) DeepCopy

func (in *SubjectListStatus) DeepCopy() *SubjectListStatus

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

func (*SubjectListStatus) DeepCopyInto

func (in *SubjectListStatus) DeepCopyInto(out *SubjectListStatus)

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

type TargetScheduling

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

	// Spec contains the specification for the Scheduling
	Spec TargetSchedulingSpec `json:"spec"`
}

TargetScheduling defines the rules according to which a LandscaperDeployment is assigned a ServiceTargetConfig. +kubebuilder:resource:singular="targetscheduling",path="targetschedulings",shortName="ts",scope="Namespaced" +kubebuilder:storageversion

func (*TargetScheduling) DeepCopy

func (in *TargetScheduling) DeepCopy() *TargetScheduling

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

func (*TargetScheduling) DeepCopyInto

func (in *TargetScheduling) DeepCopyInto(out *TargetScheduling)

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

func (*TargetScheduling) DeepCopyObject

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

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

type TargetSchedulingList

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

TargetSchedulingList contains a list of Scheduling

func (*TargetSchedulingList) DeepCopy

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

func (*TargetSchedulingList) DeepCopyInto

func (in *TargetSchedulingList) DeepCopyInto(out *TargetSchedulingList)

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

func (*TargetSchedulingList) DeepCopyObject

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

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

type TargetSchedulingSpec

type TargetSchedulingSpec struct {
	Rules []SchedulingRule `json:"rules,omitempty"`
}

func (*TargetSchedulingSpec) DeepCopy

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

func (*TargetSchedulingSpec) DeepCopyInto

func (in *TargetSchedulingSpec) DeepCopyInto(out *TargetSchedulingSpec)

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

type TenantSelector

type TenantSelector struct {
	ID string `json:"id,omitempty"`
}

func (*TenantSelector) DeepCopy

func (in *TenantSelector) DeepCopy() *TenantSelector

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

func (*TenantSelector) DeepCopyInto

func (in *TenantSelector) DeepCopyInto(out *TenantSelector)

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