v1beta1

package
v1.9.0-rc2 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2026 License: Apache-2.0 Imports: 31 Imported by: 1

Documentation

Overview

Package v1beta1 contains API Schema definitions for the k0rdent.mirantis.com v1beta1 API group. +kubebuilder:object:generate=true +groupName=k0rdent.mirantis.com

Example (IsNonMajor)
_, _ = fmt.Printf("isNonMajor(\"1alpha1\", \"alpha\", 1): %v\n", isNonMajor("1alpha1", "alpha", 1))
_, _ = fmt.Printf("isNonMajor(\"1beta1\", \"beta\", 1): %v\n", isNonMajor("1beta1", "beta", 1))
_, _ = fmt.Printf("isNonMajor(\"NONSENSEbeta1\", \"beta\", 8): %v\n", isNonMajor("NONSENSEbeta1", "beta", 8))
_, _ = fmt.Printf("isNonMajor(\"beta1\", \"beta\", 1): %v\n", isNonMajor("beta1", "beta", 1))
Output:
isNonMajor("1alpha1", "alpha", 1): true
isNonMajor("1beta1", "beta", 1): true
isNonMajor("NONSENSEbeta1", "beta", 8): false
isNonMajor("beta1", "beta", 1): false

Index

Examples

Constants

View Source
const (
	AccessManagementKind = "AccessManagement"

	AccessManagementName = "kcm"
)
View Source
const (
	BlockingFinalizer          = "k0rdent.mirantis.com/cleanup"
	ClusterDeploymentFinalizer = "k0rdent.mirantis.com/cluster-deployment"

	FluxHelmChartNameKey      = "helm.toolkit.fluxcd.io/name"
	FluxHelmChartNamespaceKey = "helm.toolkit.fluxcd.io/namespace"

	KCMManagedLabelKey   = "k0rdent.mirantis.com/managed"
	KCMManagedLabelValue = "true"
)
View Source
const (
	// TemplateReadyCondition indicates the referenced Template exists and valid.
	TemplateReadyCondition = "TemplateReady"
	// HelmChartReadyCondition indicates the corresponding HelmChart is valid and ready.
	HelmChartReadyCondition = "HelmChartReady"
	// HelmReleaseReadyCondition indicates the corresponding HelmRelease is ready and fully reconciled.
	HelmReleaseReadyCondition = "HelmReleaseReady"
	// CAPIClusterSummaryCondition aggregates all the important conditions from the Cluster object.
	CAPIClusterSummaryCondition = "CAPIClusterSummary"
	// SveltosClusterReadyCondition indicates the sveltos cluster is valid and ready.
	SveltosClusterReadyCondition = "SveltosClusterReady"
	// CloudResourcesDeletedCondition indicates whether the cloud resources have been deleted.
	CloudResourcesDeletedCondition = "CloudResourcesDeletedCondition"
	// ClusterAuthenticationReadyCondition indicates whether the referenced [ClusterAuthentication] object exists
	// and ready.
	ClusterAuthenticationReadyCondition = "ClusterAuthenticationReady"
	// DataSourceReadyCondition indicates whether the referenced [DataSource] object exists and ready.
	DataSourceReadyCondition = "DataSourceReady"
	// ClusterDataSourceReadyCondition indicates whether the dedicated [ClusterDataSource] object exists and its data is ready to be used.
	ClusterDataSourceReadyCondition = "ClusterDataSourceReady"
	// HelmChartNameChangedCondition indicates that the Helm chart name has changed compared to the currently deployed release.
	// When a chart name changes, Flux will uninstall the existing release and reinstall it as a new release,
	// which may cause service disruption or resource recreation.
	//
	// NOTE: This is a non-blocking information condition.
	HelmChartNameChangedCondition = "HelmChartNameChanged"
)
View Source
const (
	// WaitingForCloudResourcesDeletionReason indicates the controller is waiting for the cloud resources to be
	// deleted before proceeding with the [ClusterDeployment] deletion.
	WaitingForCloudResourcesDeletionReason = "WaitingForCloudResourcesDeletion"
	// WaitingForClusterDeletionReason indicates the cluster is being deleted, and the controller is waiting for
	// the cluster deletion to complete before deleting the [ClusterDeployment].
	WaitingForClusterDeletionReason = "WaitingForClusterDeletion"
	// WaitingForHelmReleaseDeletionReason indicates the controller is waiting for
	// the [github.com/fluxcd/helm-controller/api/v2.HelmRelease] deletion to complete before proceeding with
	// the [ClusterDeployment] deletion.
	WaitingForHelmReleaseDeletionReason = "WaitingForHelmReleaseDeletion"
	// WaitingForServiceSetsDeletionReason indicates that the controller is waiting for the deletion of the [ServiceSet]
	// objects to complete before proceeding with the [ClusterDeployment] deletion.
	WaitingForServiceSetsDeletionReason = "WaitingForServiceSetsDeletion"
	// WaitingForClusterDataSourceDeletionReason indicates the controller is waiting for the deletion of
	// the referenced [ClusterDataSource] object to complete before proceeding with the [ClusterDeployment] deletion.
	WaitingForClusterDataSourceDeletionReason = "WaitingForClusterDataSourceDeletion"
	// DeletionCompletedReason indicates the cluster deletion is completed, and all the related resources have been deleted.
	DeletionCompletedReason = "DeletionCompleted"
	// HelmChartNameChangedReason indicates the Helm chart name has changed compared to the currently deployed release.
	HelmChartNameChangedReason = "HelmChartNameChanged"
)
View Source
const (
	// ClusterIPAMClaimKind Denotes the clusteripamclaim resource Kind.
	ClusterIPAMClaimKind = "ClusterIPAMClaim"

	// ClusterIPAMKind Denotes the clusteripam resource Kind.
	ClusterIPAMKind = "ClusterIPAM"

	// InvalidClaimConditionType Denotes that the claim is invalid
	InvalidClaimConditionType = "InvalidClaimCondition"

	// IPAMProviderConditionError Denotes the status of the IPAM provider
	IPAMProviderConditionError = "IPAMProviderConditionError"

	// InClusterProviderName denotes the In-Cluster CAPI IPAM provider name
	InClusterProviderName = "in-cluster"
	// InfobloxProviderName denotes the Infoblox CAPI IPAM provider name
	InfobloxProviderName = "ipam-infoblox"
)
View Source
const (
	// Denotes the clustertemplate resource Kind.
	ClusterTemplateKind = "ClusterTemplate"
	// ChartAnnotationKubernetesVersion is an annotation containing the Kubernetes exact version in the SemVer format associated with a ClusterTemplate.
	ChartAnnotationKubernetesVersion = "k0rdent.mirantis.com/k8s-version"
)
View Source
const (
	// SucceededReason indicates a condition or event observed a success, for example when declared desired state
	// matches actual state, or a performed action succeeded.
	SucceededReason string = "Succeeded"

	// FailedReason indicates a condition or event observed a failure, for example when declared state does not match
	// actual state, or a performed action failed.
	FailedReason string = "Failed"

	// ProgressingReason indicates a condition or event observed progression, for example when the reconciliation of a
	// resource or an action has started.
	ProgressingReason string = "Progressing"

	// DeletingReason indicates a condition or event for the deletion of the object.
	DeletingReason string = "Deleting"

	// NotPausedReason appears when an object is not paused.
	NotPausedReason = "NotPaused"

	// PausedReason appears when an object is paused.
	PausedReason = "Paused"
)
View Source
const (
	// ReadyCondition indicates a resource is ready and fully reconciled.
	ReadyCondition string = "Ready"

	// DeletingCondition indicates a resource is deleting.
	DeletingCondition string = "Deleting"

	// PredeclaredSecretsExistCondition indicates whether all object's required (and predeclared) Secrets exist.
	PredeclaredSecretsExistCondition = "PredeclaredSecretsExist"

	// PausedCondition indicates whether an object is paused and not being reconciled.
	PausedCondition = "Paused"
)
View Source
const (
	// Provider K0smotron
	ProviderK0smotronName = "k0smotron"
	// Provider Sveltos
	ProviderSveltosName = "projectsveltos"
)
View Source
const (
	CredentialKind = "Credential"

	// CredentialReadyCondition indicates if referenced Credential exists and has Ready state
	CredentialReadyCondition = "CredentialReady"

	// CredentialLabelKeyPrefix is a label key prefix applied to all ClusterIdentity objects and their references.
	// Each managed ClusterIdentity will have this label set in format of:
	// k0rdent.mirantis.com/credential.<cred-namespace>.<cred-name>: true
	// Which means that this ClusterIdentity is managed by the Credential `cred-namespace/cred-name`.
	// One ClusterIdentity can be managed by multiple Credential objects.
	CredentialLabelKeyPrefix = "k0rdent.mirantis.com/credential"

	CredentialFinalizer = "k0rdent.mirantis.com/credential"
)
View Source
const (
	// Name to label most of the KCM-related components.
	// Mostly utilized by the backup feature.
	GenericComponentNameLabel = "k0rdent.mirantis.com/component"
	// Component label value for the KCM-related components.
	GenericComponentLabelValueKCM = "kcm"
)
View Source
const (
	CoreKCMName         = "kcm"
	CoreKCMRegionalName = "kcm-regional"

	CoreCAPIName = "capi"

	ManagementKind      = "Management"
	ManagementName      = "kcm"
	ManagementFinalizer = "k0rdent.mirantis.com/management"

	K0rdentManagementClusterLabelKey   = "k0rdent.mirantis.com/management-cluster"
	K0rdentManagementClusterLabelValue = "true"
)
View Source
const (
	// AllComponentsHealthyReason surfaces overall readiness of Management's components.
	AllComponentsHealthyReason = "AllComponentsHealthy"
	// NotAllComponentsHealthyReason documents a condition not in Status=True because one or more components are failing.
	NotAllComponentsHealthyReason = "NotAllComponentsHealthy"
	// ReleaseIsNotFoundReason declares that the referenced in the [Management] [Release] object does not (yet) exist.
	ReleaseIsNotFoundReason = "ReleaseIsNotFound"
	// ReleaseIsNotReadyReason declares that the referenced in the [Management] [Release] object is not (yet) ready.
	ReleaseIsNotReadyReason = "ReleaseIsNotReady"
	// ReleaseIsNotObserved declares that the referenced in the [Management] [Release] object is not (yet) observed.
	ReleaseIsNotObserved = "ReleaseIsNotObserved"
	// HasIncompatibleContractsReason declares that the [Management] object has incompatible CAPI contracts in providers.
	HasIncompatibleContractsReason = "HasIncompatibleContracts"
)
View Source
const (
	// MultiClusterServiceFinalizer is finalizer applied to MultiClusterService objects.
	MultiClusterServiceFinalizer = "k0rdent.mirantis.com/multicluster-service"
	// MultiClusterServiceKind is the string representation of a MultiClusterServiceKind.
	MultiClusterServiceKind = "MultiClusterService"
)
View Source
const (
	// SveltosProfileReadyCondition indicates if the Sveltos Profile is ready.
	SveltosProfileReadyCondition = "SveltosProfileReady"
	// SveltosClusterProfileReadyCondition indicates if the Sveltos ClusterProfile is ready.
	SveltosClusterProfileReadyCondition = "SveltosClusterProfileReady"
	// SveltosHelmReleaseReadyCondition indicates if the HelmRelease
	// managed by a Sveltos Profile/ClusterProfile is ready.
	SveltosHelmReleaseReadyCondition = "SveltosHelmReleaseReady"

	// FetchServicesStatusSuccessCondition indicates if status
	// for the deployed services have been fetched successfully.
	FetchServicesStatusSuccessCondition = "FetchServicesStatusSuccess"

	// ServicesInReadyStateCondition shows the number of multiclusterservices or clusterdeployments
	// services that are ready. A service is marked as ready if all its conditions are ready.
	// The format is "<ready-num>/<total-num>", e.g. "2/3" where 2 services of total 3 are ready.
	ServicesInReadyStateCondition = "ServicesInReadyState"

	// ClusterInReadyStateCondition shows the number of clusters that are ready.
	// A Cluster is ready if corresponding ClusterDeployment is ready.
	// The format is "<ready-num>/<total-num>", e.g. "2/3" where 2 clusters of total 3 are ready.
	ClusterInReadyStateCondition = "ClusterInReadyState"

	// ServicesReferencesValidationCondition defines the condition of services' references validation.
	ServicesReferencesValidationCondition = "ServicesReferencesValidation"

	// ServicesDependencyValidationCondition defines the condition of services' dependencies.
	ServicesDependencyValidationCondition = "ServicesDependencyValidation"

	// MultiClusterServiceDependencyValidationCondition defines the condition of MultiClusterService dependencies.
	MultiClusterServiceDependencyValidationCondition = "MultiClusterServiceDependencyValidation"
)
View Source
const (
	// ServicesReferencesValidationFailedReason signals that the validation for references related to services (KSM) failed.
	ServicesReferencesValidationFailedReason = "ServicesReferencesValidationFailed"
	// ServicesReferencesValidationSucceededReason signals that the validation for references related to services (KSM) succeeded.
	ServicesReferencesValidationSucceededReason = "ServicesReferencesValidationSucceeded"
	// SveltosProfileNotReadyReason signals that the Sveltos Profile object is not yet ready.
	SveltosProfileNotReadyReason = "SveltosProfileNotReady"
	// SveltosClusterProfileNotReadyReason signals that the Sveltos ClusterProfile object is not yet ready.
	SveltosClusterProfileNotReadyReason = "SveltosClusterProfileNotReady"
	// FetchServicesStatusFailedReason signals that fetching the status of services from Sveltos objects failed.
	FetchServicesStatusFailedReason = "FetchServicesStatusFailed"
	// SveltosHelmReleaseNotReadyReason signals that the helm release managed by Sveltos on target cluster is not yet ready.
	SveltosHelmReleaseNotReadyReason = "SveltosHelmReleaseNotReady"
	// SveltosFeatureReadyReason signals that the feature managed by Sveltos on target cluster is ready.
	SveltosFeatureReadyReason = "SveltosFeatureReady"
	// SveltosFeatureNotReadyReason signals that the feature managed by Sveltos on target cluster is not yet ready.
	SveltosFeatureNotReadyReason = "SveltosFeatureNotReady"
)

Reasons are provided as utility, and not part of the declarative API.

View Source
const (
	// ProviderInterfaceKind represents the kind for provider interfaces
	ProviderInterfaceKind = "ProviderInterface"

	// InfrastructureProviderPrefix is the prefix used for infrastructure provider names
	InfrastructureProviderPrefix = "infrastructure-"
)
View Source
const (
	RegionFinalizer       = "k0rdent.mirantis.com/region"
	KCMRegionLabelKey     = "k0rdent.mirantis.com/region"
	RegionPauseAnnotation = "k0rdent.mirantis.com/region-pause"
)
View Source
const (
	ReleaseKind = "Release"

	// TemplatesCreatedCondition indicates that all templates associated with the Release are created.
	TemplatesCreatedCondition = "TemplatesCreated"
	// TemplatesValidCondition indicates that all templates associated with the Release are valid.
	TemplatesValidCondition = "TemplatesValid"

	KCMRegionalTemplateAnnotation = "k0rdent.mirantis.com/kcm-regional-template"
)
View Source
const (
	// ServiceSetKind is the string representation of the ServiceSet.
	ServiceSetKind = "ServiceSet"
	// ServiceSetFinalizer is the finalizer for ServiceSet
	ServiceSetFinalizer = "k0rdent.mirantis.com/service-set"

	// ServiceStateDeployed is the state when the Service is deployed
	ServiceStateDeployed = "Deployed"
	// ServiceStateFailed is the state when the Service is failed
	ServiceStateFailed = "Failed"
	// ServiceStateNotDeployed is the state when the Service is not deployed
	ServiceStateNotDeployed = "Pending"
	// ServiceStateProvisioning is the state when the Service is being provisioned
	ServiceStateProvisioning = "Provisioning"
	// ServiceStateDeleting is the state when the Service is being deleted
	ServiceStateDeleting = "Deleting"

	// ServiceTypeHelm is the type for Helm Service
	ServiceTypeHelm ServiceType = "Helm"
	// ServiceTypeKustomize is the type for Kustomize Service
	ServiceTypeKustomize ServiceType = "Kustomize"
	// ServiceTypeResource is the type for Resource Service
	ServiceTypeResource ServiceType = "Resource"

	// ServiceSetProfileCondition is the condition type for ServiceSet profile
	ServiceSetProfileCondition = "ServiceSetProfile"
	// ServiceSetProfileNotReadyReason is the reason for the profile is not ready
	ServiceSetProfileNotReadyReason = "ServiceSetProfileNotReady"
	// ServiceSetProfileNotReadyMessage is the message for the profile is not ready
	ServiceSetProfileNotReadyMessage = "Profile is not ready"
	// ServiceSetProfileReadyReason is the reason for the profile is ready
	ServiceSetProfileReadyReason = "ServiceSetProfileReady"
	// ServiceSetProfileReadyMessage is the message for the profile is ready
	ServiceSetProfileReadyMessage = "Profile is ready"

	// ServiceSetStatusesCollectedCondition is the condition type for ServiceSet statuses collection
	ServiceSetStatusesCollectedCondition = "ServiceSetStatusesCollected"
	// ServiceSetStatusesCollectedReason is the reason for the statuses collection is ready
	ServiceSetStatusesCollectedReason = "ServiceSetStatusesCollected"
	// ServiceSetStatusesCollectedMessage is the message for the statuses collection is ready
	ServiceSetStatusesCollectedMessage = "Statuses collected"
	// ServiceSetStatusesNotCollectedReason is the reason for the statuses collection is not ready
	ServiceSetStatusesNotCollectedReason = "ServiceSetStatusesNotCollected"
	// ServiceSetStatusesNotCollectedMessage is the message for the statuses collection is not ready
	ServiceSetStatusesNotCollectedMessage = "Statuses not collected"

	// ServiceSetProfileBuildFailedReason is the reason for the profile build failed
	ServiceSetProfileBuildFailedReason = "ServiceSetProfileBuildFailed"
	// ServiceSetHelmChartsBuildFailedReason is the reason for the Helm charts build failed
	ServiceSetHelmChartsBuildFailedReason = "ServiceSetHelmChartsBuildFailed"
	// ServiceSetKustomizationRefsBuildFailedReason is the reason for the Kustomization build failed
	ServiceSetKustomizationRefsBuildFailedReason = "ServiceSetKustomizationRefsBuildFailed"
	// ServiceSetPolicyRefsBuildFailedReason is the reason for the PolicyRefs build failed
	ServiceSetPolicyRefsBuildFailedReason = "ServiceSetPolicyRefsBuildFailed"

	// ServiceSetHelmChartsBuildFailedEvent indicates the event for Helm charts build failed
	ServiceSetHelmChartsBuildFailedEvent = "ServiceSetHelmChartsBuildFailed"
	// ServiceSetKustomizationRefsBuildFailedEvent indicates the event for Kustomization build failed
	ServiceSetKustomizationRefsBuildFailedEvent = "ServiceSetKustomizationBuildFailed"
	// ServiceSetPolicyRefsBuildFailedEvent indicates the event for PolicyRefs build failed
	ServiceSetPolicyRefsBuildFailedEvent = "ServiceSetPolicyRefsBuildFailed"
	// ServiceSetProfileBuildFailedEvent indicates the event for Profile build failed
	ServiceSetProfileBuildFailedEvent = "ServiceSetProfileBuildFailed"
	// ServiceSetEnsureProfileFailedEvent indicates the event for Profile create or update failed
	ServiceSetEnsureProfileFailedEvent = "ServiceSetEnsureProfileFailed"
	// ServiceSetEnsureProfileSuccessEvent indicates the event for Profile create or update succeeded
	ServiceSetEnsureProfileSuccessEvent = "ServiceSetEnsureProfileSuccess"
	// ServiceSetCollectServiceStatusesSuccessEvent indicates the event for services status collection succeeded
	ServiceSetCollectServiceStatusesSuccessEvent = "ServiceSetCollectServiceStatusesSuccess"
	// ServiceSetCollectServiceStatusesFailedEvent indicates the event for services status collection failed
	ServiceSetCollectServiceStatusesFailedEvent = "ServiceSetCollectServiceStatusesFailed"

	ServiceSetReconcileEventAction              = "Reconcile"
	ServiceSetEnsureProfileEventAction          = "EnsureProfile"
	ServiceSetBuildProfileEventAction           = "BuildProfile"
	ServiceSetBuildHelmChartsEventAction        = "BuildHelmCharts"
	ServiceSetBuildKustomizationRefsEventAction = "BuildKustomizationRefs"
	ServiceSetBuildPolicyRefsEventAction        = "BuildPolicyRefs"
	ServiceSetCollectServiceStatusesEventAction = "CollectServiceStatuses"

	// ServiceSetIsBeingDeletedEvent indicates the event for services set being deleted.
	ServiceSetIsBeingDeletedEvent = "ServiceSetIsBeingDeleted"

	ServiceSetPausedAnnotation = "k0rdent.mirantis.com/service-set-paused"
)
View Source
const (
	// ServiceTemplateKind denotes the servicetemplate resource Kind.
	ServiceTemplateKind = "ServiceTemplate"
	// ChartAnnotationKubernetesConstraint is an annotation containing the Kubernetes constrained version in the SemVer format associated with a ServiceTemplate.
	ChartAnnotationKubernetesConstraint = "k0rdent.mirantis.com/k8s-version-constraint"

	SecretKind    = "Secret"
	ConfigMapKind = "ConfigMap"
)
View Source
const (
	// StateManagementProviderKind is the string representation of the StateManagementProviderKind
	StateManagementProviderKind = "StateManagementProvider"

	// StateManagementProviderRBACCondition indicates the status of the rbac
	StateManagementProviderRBACCondition = "RBACReady"
	// StateManagementProviderRBACNotReadyReason indicates the reason for the rbac is not ready
	StateManagementProviderRBACNotReadyReason = "RBACNotReady"
	// StateManagementProviderRBACFailedToGetGVKForAdapterReason indicates the reason for the rbac failed to get gvk for adapter
	StateManagementProviderRBACFailedToGetGVKForAdapterReason = "FailedToGetGVKForAdapter"
	// StateManagementProviderRBACFailedToGetGVKForProvisionerReason indicates the reason for the rbac failed to get gvk for provisioner
	StateManagementProviderRBACFailedToGetGVKForProvisionerReason = "FailedToGetGVKForProvisioner"
	// StateManagementProviderRBACFailedToEnsureClusterRoleReason indicates the reason for the rbac failed to ensure cluster role
	StateManagementProviderRBACFailedToEnsureClusterRoleReason = "FailedToEnsureClusterRole"
	// StateManagementProviderRBACFailedToEnsureClusterRoleBindingReason indicates the reason for the rbac failed to ensure cluster role binding
	StateManagementProviderRBACFailedToEnsureClusterRoleBindingReason = "FailedToEnsureClusterRoleBinding"
	// StateManagementProviderRBACFailedToEnsureServiceAccountReason indicates the reason for the rbac failed to ensure service account
	StateManagementProviderRBACFailedToEnsureServiceAccountReason = "FailedToEnsureServiceAccount"
	// StateManagementProviderRBACNotReadyMessage indicates the message for the rbac is not ready
	StateManagementProviderRBACNotReadyMessage = "rbac not ready"
	// StateManagementProviderRBACReadyReason indicates the reason for the rbac readiness
	StateManagementProviderRBACReadyReason = "RBACEnsuredSuccessfully"
	// StateManagementProviderRBACReadyMessage indicates the message for the rbac readiness
	StateManagementProviderRBACReadyMessage = "Successfully ensured RBAC"
	// StateManagementProviderRBACUnknownReason indicates the reason for the rbac unknown
	StateManagementProviderRBACUnknownReason = "RBACUnknown"

	// StateManagementProviderAdapterCondition indicates the status of the adapter
	StateManagementProviderAdapterCondition = "AdapterReady"
	// StateManagementProviderAdapterNotReadyReason indicates the reason for the adapter is not ready
	StateManagementProviderAdapterNotReadyReason = "AdapterNotReady"
	// StateManagementProviderAdapterNotReadyMessage indicates the message for the adapter is not ready
	StateManagementProviderAdapterNotReadyMessage = "adapter not ready"
	// StateManagementProviderAdapterReadyReason indicates the reason for the adapter readiness
	StateManagementProviderAdapterReadyReason = "AdapterEnsuredSuccessfully"
	// StateManagementProviderAdapterReadyMessage indicates the message for the adapter readiness
	StateManagementProviderAdapterReadyMessage = "Successfully ensured adapter"
	// StateManagementProviderAdapterUnknownReason indicates the reason for the adapter unknown
	StateManagementProviderAdapterUnknownReason = "AdapterUnknown"

	// StateManagementProviderProvisionerCondition indicates the status of the provisioners
	StateManagementProviderProvisionerCondition = "ProvisionerReady"
	// StateManagementProviderProvisionerNotReadyReason indicates the reason for the provisioner is not ready
	StateManagementProviderProvisionerNotReadyReason = "ProvisionerNotReady"
	// StateManagementProviderProvisionerNotReadyMessage indicates the message for the provisioner is not ready
	StateManagementProviderProvisionerNotReadyMessage = "provisioner not ready"
	// StateManagementProviderProvisionerReadyReason indicates the reason for the provisioner readiness
	StateManagementProviderProvisionerReadyReason = "ProvisionerEnsuredSuccessfully"
	// StateManagementProviderProvisionerReadyMessage indicates the message for the provisioner readiness
	StateManagementProviderProvisionerReadyMessage = "Successfully ensured provisioner"
	// StateManagementProviderProvisionerUnknownReason indicates the reason for the rbac unknown
	StateManagementProviderProvisionerUnknownReason = "ProvisionerUnknown"

	// StateManagementProviderProvisionerCRDsCondition indicates the status of the ProvisionerCRDs
	StateManagementProviderProvisionerCRDsCondition = "ProvisionerCRDsReady"
	// StateManagementProviderProvisionerCRDsNotReadyReason indicates the reason for the ProvisionerCRDs are not ready
	StateManagementProviderProvisionerCRDsNotReadyReason = "ProvisionerCRDsNotReady"
	// StateManagementProviderProvisionerCRDsNotReadyMessage indicates the message for the ProvisionerCRDs are not ready
	StateManagementProviderProvisionerCRDsNotReadyMessage = "provisioner CRDs not ready"
	// StateManagementProviderProvisionerCRDsReadyReason indicates the reason for the ProvisionerCRDs readiness
	StateManagementProviderProvisionerCRDsReadyReason = "ProvisionerCRDsEnsuredSuccessfully"
	// StateManagementProviderProvisionerCRDsReadyMessage indicates the message for the ProvisionerCRDs readiness
	StateManagementProviderProvisionerCRDsReadyMessage = "Successfully ensured provisioner CRDs"
	// StateManagementProviderProvisionerCRDsUnknownReason indicates the reason for the ProvisionerCRDs unknown
	StateManagementProviderProvisionerCRDsUnknownReason = "ProvisionerCRDsUnknown"

	// StateManagementProviderFailedToGetResourceReason indicates the reason for the failure
	// due to the failure to get the resource
	StateManagementProviderFailedToGetResourceReason = "FailedToGetAdapter"
	// StateManagementProviderFailedToEvaluateReadinessReason indicates the reason for the failure
	// due to the failure to evaluate the readiness
	StateManagementProviderFailedToEvaluateReadinessReason = "FailedToEvaluateReadiness"

	// StateManagementProviderFailedRBACEvent indicates the event for the RBAC failure
	StateManagementProviderFailedRBACEvent = "FailedToEnsureRBAC"
	// StateManagementProviderSuccessRBACEvent indicates the event for the RBAC success
	StateManagementProviderSuccessRBACEvent = "SuccessfullyEnsuredRBAC"
	// StateManagementProviderFailedAdapterEvent indicates the event for the adapter failure
	StateManagementProviderFailedAdapterEvent = "FailedToEnsureAdapter"
	// StateManagementProviderSuccessAdapterEvent indicates the event for the adapter success
	StateManagementProviderSuccessAdapterEvent = "SuccessfullyEnsuredAdapter"
	// StateManagementProviderFailedProvisionerEvent indicates the event for the provisioners failure
	StateManagementProviderFailedProvisionerEvent = "FailedToEnsureProvisioner"
	// StateManagementProviderSuccessProvisionerEvent indicates the event for the provisioners success
	StateManagementProviderSuccessProvisionerEvent = "SuccessfullyEnsuredProvisioner"
	// StateManagementProviderFailedProvisionerCRDsEvent indicates the event for the ProvisionerCRDs failure
	StateManagementProviderFailedProvisionerCRDsEvent = "FailedToEnsureProvisionerCRDs"
	// StateManagementProviderSuccessProvisionerCRDsEvent indicates the event for the ProvisionerCRDs success
	StateManagementProviderSuccessProvisionerCRDsEvent = "SuccessfullyEnsuredProvisionerCRDs"
	// StateManagementProviderNotReadyEvent indicates the event for the StateManagementProvider not ready
	StateManagementProviderNotReadyEvent = "StateManagementProviderNotReady"
	// StateManagementProviderSuspendedEvent indicates the event for StateManagementProvider is suspended.
	StateManagementProviderSuspendedEvent = "StateManagementProviderSuspended"

	// StateManagementProviderSelectorNotDefinedEvent indicates the event for the StateManagementProvider selector not defined
	StateManagementProviderSelectorNotDefinedEvent = "StateManagementProviderSelectorNotDefined"
)
View Source
const ClusterAuthenticationKind = "ClusterAuthentication"
View Source
const ClusterDataSourceFinalizer = "k0rdent.mirantis.com/cluster-data-source"
View Source
const ClusterDeploymentAuthenticationIndexKey = ".spec.authentication"

ClusterDeploymentAuthenticationIndexKey indexer field name to extract ClusterAuthentication name reference from a ClusterDeployment object.

View Source
const ClusterDeploymentCredentialIndexKey = ".spec.credential"

ClusterDeploymentCredentialIndexKey indexer field name to extract Credential name reference from a ClusterDeployment object.

View Source
const ClusterDeploymentKind = "ClusterDeployment"

ClusterDeploymentKind is the string representation of a ClusterDeployment.

View Source
const ClusterDeploymentServiceTemplateChainIndexKey = ".spec.serviceSpec.services[].templateChain"

ClusterDeploymentServiceTemplateChainIndexKey indexer field name to extract service template chain name from a ClusterDeployment object.

View Source
const ClusterDeploymentServiceTemplatesIndexKey = ".spec.services[].Template"

ClusterDeploymentServiceTemplatesIndexKey indexer field name to extract service templates names from a ClusterDeployment object.

View Source
const ClusterDeploymentTemplateIndexKey = ".spec.template"

ClusterDeploymentTemplateIndexKey indexer field name to extract ClusterTemplate name reference from a ClusterDeployment object.

View Source
const ClusterTemplateChainKind = "ClusterTemplateChain"
View Source
const ClusterTemplateProvidersIndexKey = "clusterTemplateProviders"

ClusterTemplateProvidersIndexKey indexer field name to extract provider names from a ClusterTemplate object.

View Source
const CredentialRegionIndexKey = ".spec.region"

CredentialRegionIndexKey indexer field name to extract region name from Credential object.

View Source
const DataSourceKind = "DataSource"
View Source
const (
	DefaultRepoName = "kcm-templates"
)
View Source
const (
	// KineTypePostresql represents the PostgreSQL backend for Kine database connections.
	KineTypePostresql = "postgresql"
)
View Source
const ManagementBackupAutoUpgradeIndexKey = "k0rdent.management-backup-upgrades"

ManagementBackupAutoUpgradeIndexKey indexer field name to extract only ManagementBackup objects with schedule and auto-upgrade set.

View Source
const ManagementBackupIndexKey = "k0rdent.management-backup"

ManagementBackupIndexKey indexer field name to extract only ManagementBackup objects that either has schedule or has NOT been completed yet.

View Source
const MultiClusterServiceTemplateChainIndexKey = ".spec.serviceSpec.services[].templateChain"

MultiClusterServiceTemplateChainIndexKey indexer field name to extract template chain names from a MultiClusterService object.

View Source
const MultiClusterServiceTemplatesIndexKey = "serviceTemplates"

MultiClusterServiceTemplatesIndexKey indexer field name to extract service templates names from a MultiClusterService object.

View Source
const OwnerRefIndexKey = ".metadata.ownerReferences"

OwnerRefIndexKey indexer field name to extract ownerReference names from objects

View Source
const ProviderTemplateKind = "ProviderTemplate"

ProviderTemplateKind denotes the providertemplate resource Kind.

View Source
const (
	// RegionConfigurationErrorReason declares that the [Region] object has configuration issues.
	RegionConfigurationErrorReason = "ConfigurationError"
)
View Source
const (
	RegionKind = "Region"
)
View Source
const ReleaseTemplatesIndexKey = "releaseTemplates"

ReleaseTemplatesIndexKey indexer field name to extract component template names from a Release object.

View Source
const ReleaseVersionIndexKey = ".spec.version"

ReleaseVersionIndexKey indexer field name to extract release version from a Release object.

View Source
const ServiceSetClusterIndexKey = "k0rdent.service-set.cluster"

ServiceSetClusterIndexKey indexer field name to extract cluster name from ServiceSet object.

View Source
const ServiceSetMultiClusterServiceIndexKey = "k0rdent.service-set.multi-cluster-service"

ServiceSetMultiClusterServiceIndexKey indexer field name to extract multi-cluster-service from ServiceSet object.

View Source
const ServiceSetProviderIndexKey = "k0rdent.service-set.provider"

ServiceSetProviderIndexKey indexer field name to extract provider name from ServiceSet object.

View Source
const ServiceTemplateChainKind = "ServiceTemplateChain"
View Source
const TemplateChainSupportedTemplatesIndexKey = ".spec.supportedTemplates[].Name"

TemplateChainSupportedTemplatesIndexKey indexer field name to extract supported template names from an according TemplateChain object.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "k0rdent.mirantis.com", 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 ExtractClusterAuthenticationNameFromClusterDeployment added in v1.6.0

func ExtractClusterAuthenticationNameFromClusterDeployment(rawObj client.Object) []string

ExtractClusterAuthenticationNameFromClusterDeployment returns referenced ClusterAuthentication name declared in a ClusterDeployment object.

func ExtractCredentialNameFromClusterDeployment added in v1.5.0

func ExtractCredentialNameFromClusterDeployment(rawObj client.Object) []string

ExtractCredentialNameFromClusterDeployment returns referenced Credential name declared in a ClusterDeployment object.

func ExtractCredentialRegion added in v1.5.0

func ExtractCredentialRegion(o client.Object) []string

ExtractCredentialRegion returns the region name from Credential object.

func ExtractProvidersFromClusterTemplate

func ExtractProvidersFromClusterTemplate(o client.Object) []string

ExtractProvidersFromClusterTemplate returns provider names from a ClusterTemplate object.

func ExtractScheduledOrIncompleteBackups

func ExtractScheduledOrIncompleteBackups(o client.Object) []string

ExtractScheduledOrIncompleteBackups returns either scheduled or incomplete backups.

func ExtractServiceSetCluster added in v1.3.0

func ExtractServiceSetCluster(o client.Object) []string

ExtractServiceSetCluster returns the cluster name from ServiceSet object.

func ExtractServiceSetMultiClusterService added in v1.3.0

func ExtractServiceSetMultiClusterService(o client.Object) []string

ExtractServiceSetMultiClusterService returns the multi-cluster-service from ServiceSet object.

func ExtractServiceSetProvider added in v1.3.0

func ExtractServiceSetProvider(o client.Object) []string

ExtractServiceSetProvider returns the provider name from ServiceSet object.

func ExtractServiceTemplateChainNameFromClusterDeployment

func ExtractServiceTemplateChainNameFromClusterDeployment(rawObj client.Object) []string

ExtractServiceTemplateChainNameFromClusterDeployment returns a list of service template chain names declared in a ClusterDeployment object.

func ExtractServiceTemplateChainNamesFromMultiClusterService

func ExtractServiceTemplateChainNamesFromMultiClusterService(rawObj client.Object) []string

ExtractServiceTemplateChainNamesFromMultiClusterService returns a list of template chain names declared in a MultiClusterService object.

func ExtractServiceTemplateNamesFromClusterDeployment

func ExtractServiceTemplateNamesFromClusterDeployment(rawObj client.Object) []string

ExtractServiceTemplateNamesFromClusterDeployment returns a list of service templates names declared in a ClusterDeployment object.

func ExtractServiceTemplateNamesFromMultiClusterService

func ExtractServiceTemplateNamesFromMultiClusterService(rawObj client.Object) []string

ExtractServiceTemplateNamesFromMultiClusterService returns a list of service templates names declared in a MultiClusterService object.

func ExtractTemplateNameFromClusterDeployment

func ExtractTemplateNameFromClusterDeployment(rawObj client.Object) []string

ExtractTemplateNameFromClusterDeployment returns referenced ClusterTemplate name declared in a ClusterDeployment object.

func SetupIndexers

func SetupIndexers(ctx context.Context, mgr ctrl.Manager) error

Types

type AccessManagement

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

	Spec   AccessManagementSpec   `json:"spec,omitempty"`
	Status AccessManagementStatus `json:"status,omitempty"`
}

AccessManagement is the Schema for the AccessManagements API

func (*AccessManagement) DeepCopy

func (in *AccessManagement) DeepCopy() *AccessManagement

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

func (*AccessManagement) DeepCopyInto

func (in *AccessManagement) DeepCopyInto(out *AccessManagement)

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

func (*AccessManagement) DeepCopyObject

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

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

type AccessManagementList

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

AccessManagementList contains a list of AccessManagement

func (*AccessManagementList) DeepCopy

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

func (*AccessManagementList) DeepCopyInto

func (in *AccessManagementList) DeepCopyInto(out *AccessManagementList)

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

func (*AccessManagementList) DeepCopyObject

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

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

type AccessManagementSpec

type AccessManagementSpec struct {
	// AccessRules is the list of access rules. Each AccessRule enforces
	// objects distribution to the TargetNamespaces.
	AccessRules []AccessRule `json:"accessRules,omitempty"`
}

AccessManagementSpec defines the desired state of AccessManagement

func (*AccessManagementSpec) DeepCopy

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

func (*AccessManagementSpec) DeepCopyInto

func (in *AccessManagementSpec) DeepCopyInto(out *AccessManagementSpec)

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

type AccessManagementStatus

type AccessManagementStatus struct {
	// Error is the error message occurred during the reconciliation (if any)
	Error string `json:"error,omitempty"`
	// Current reflects the applied access rules configuration.
	Current []AccessRule `json:"current,omitempty"`
	// ObservedGeneration is the last observed generation.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

AccessManagementStatus defines the observed state of AccessManagement

func (*AccessManagementStatus) DeepCopy

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

func (*AccessManagementStatus) DeepCopyInto

func (in *AccessManagementStatus) DeepCopyInto(out *AccessManagementStatus)

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

type AccessRule

type AccessRule struct {
	// TargetNamespaces defines the namespaces where selected objects will be distributed.
	// Templates and Credentials will be distributed to all namespaces if unset.
	TargetNamespaces TargetNamespaces `json:"targetNamespaces,omitempty"`
	// ClusterTemplateChains is the list of [ClusterTemplateChain] names whose ClusterTemplates
	// will be distributed to all namespaces specified in TargetNamespaces.
	ClusterTemplateChains []string `json:"clusterTemplateChains,omitempty"`
	// ServiceTemplateChains is the list of [ServiceTemplateChain] names whose ServiceTemplates
	// will be distributed to all namespaces specified in TargetNamespaces.
	ServiceTemplateChains []string `json:"serviceTemplateChains,omitempty"`
	// Credentials is the list of [Credential] names that will be distributed to all the
	// namespaces specified in TargetNamespaces.
	Credentials []string `json:"credentials,omitempty"`
	// ClusterAuthentications is the list of [ClusterAuthentication] names that will be distributed to all the
	// namespaces specified in TargetNamespaces.
	ClusterAuthentications []string `json:"clusterAuthentications,omitempty"`
	// DataSources is the list of [DataSource] names that will be distributed to all the
	// namespaces specified in TargetNamespaces.
	DataSources []string `json:"dataSources,omitempty"`
}

AccessRule is the definition of the AccessManagement access rule. Each AccessRule enforces Templates and Credentials distribution to the TargetNamespaces

func (*AccessRule) DeepCopy

func (in *AccessRule) DeepCopy() *AccessRule

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

func (*AccessRule) DeepCopyInto

func (in *AccessRule) DeepCopyInto(out *AccessRule)

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

type AddressSpaceSpec

type AddressSpaceSpec struct {
	// Gateway to be used for the address space
	Gateway string `json:"gateway,omitempty"`

	// CIDR notation of the allocated address space
	CIDR string `json:"cidr,omitempty"`

	// IPAddresses to be allocated
	IPAddresses []string `json:"ipAddresses,omitempty"`

	// Prefix is the network prefix to use.
	Prefix int `json:"prefix,omitempty"`
}

AddressSpaceSpec defines the ip address space that will be allocated

func (*AddressSpaceSpec) DeepCopy

func (in *AddressSpaceSpec) DeepCopy() *AddressSpaceSpec

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

func (*AddressSpaceSpec) DeepCopyInto

func (in *AddressSpaceSpec) DeepCopyInto(out *AddressSpaceSpec)

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

type AuthenticationConfiguration added in v1.6.0

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

	// jwt is a list of authenticator to authenticate Kubernetes users using
	// JWT compliant tokens. The authenticator will attempt to parse a raw ID token,
	// verify it's been signed by the configured issuer. The public key to verify the
	// signature is discovered from the issuer's public endpoint using OIDC discovery.
	// For an incoming token, each JWT authenticator will be attempted in
	// the order in which it is specified in this list.  Note however that
	// other authenticators may run before or after the JWT authenticators.
	// The specific position of JWT authenticators in relation to other
	// authenticators is neither defined nor stable across releases.  Since
	// each JWT authenticator must have a unique issuer URL, at most one
	// JWT authenticator will attempt to cryptographically validate the token.
	//
	// The minimum valid JWT payload must contain the following claims:
	// {
	//		"iss": "https://issuer.example.com",
	//		"aud": ["audience"],
	//		"exp": 1234567890,
	//		"<username claim>": "username"
	// }
	JWT []apiserverv1.JWTAuthenticator `json:"jwt"`

	// If present --anonymous-auth must not be set
	Anonymous *apiserverv1.AnonymousAuthConfig `json:"anonymous,omitempty"`
}

AuthenticationConfiguration defines the structure of the kubernetes AuthenticationConfiguration object used to configure API server authentication.

This type is derived from the upstream Kubernetes implementation of k8s.io/apiserver/pkg/apis/apiserver/v1.AuthenticationConfiguration, with a modified JSON tag on the TypeMeta field.

func (*AuthenticationConfiguration) DeepCopy added in v1.6.0

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

func (*AuthenticationConfiguration) DeepCopyInto added in v1.6.0

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

func (*AuthenticationConfiguration) ToAPIServerAuthConfig added in v1.6.0

ToAPIServerAuthConfig converts the AuthenticationConfiguration object to the original struct from the apiserver package for further validation

type AvailableUpgrade

type AvailableUpgrade struct {
	// Name is the name of the Template to which the upgrade is available.
	Name string `json:"name"`

	// Version is the version of the Template to which the upgrade is available.
	Version string `json:"version,omitempty"`
}

AvailableUpgrade is the definition of the available upgrade for the Template

func (*AvailableUpgrade) DeepCopy

func (in *AvailableUpgrade) DeepCopy() *AvailableUpgrade

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

func (*AvailableUpgrade) DeepCopyInto

func (in *AvailableUpgrade) DeepCopyInto(out *AvailableUpgrade)

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

type ClusterAuthentication added in v1.6.0

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

	Spec ClusterAuthenticationSpec `json:"spec,omitempty"`
}

ClusterAuthentication is the Schema for the cluster authentication configuration API

func (*ClusterAuthentication) DeepCopy added in v1.6.0

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

func (*ClusterAuthentication) DeepCopyInto added in v1.6.0

func (in *ClusterAuthentication) DeepCopyInto(out *ClusterAuthentication)

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

func (*ClusterAuthentication) DeepCopyObject added in v1.6.0

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

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

type ClusterAuthenticationList added in v1.6.0

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

ClusterAuthenticationList contains a list of ClusterAuthentication

func (*ClusterAuthenticationList) DeepCopy added in v1.6.0

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

func (*ClusterAuthenticationList) DeepCopyInto added in v1.6.0

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

func (*ClusterAuthenticationList) DeepCopyObject added in v1.6.0

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

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

type ClusterAuthenticationSpec added in v1.6.0

type ClusterAuthenticationSpec struct {
	// AuthenticationConfiguration contains the full content of an [AuthenticationConfiguration] object,
	// which defines how the API server should perform request authentication.
	//
	// For more details, see: https://kubernetes.io/docs/reference/access-authn-authz/authentication/#using-authentication-configuration
	AuthenticationConfiguration *AuthenticationConfiguration `json:"authenticationConfiguration,omitempty"`
	// CASecret is the reference to the secret containing the CA certificates used to validate the connection
	// to the issuers endpoints.
	CASecret *SecretKeyReference `json:"caSecret,omitempty"`
}

ClusterAuthenticationSpec defines the desired state of ClusterAuthentication

func (*ClusterAuthenticationSpec) DeepCopy added in v1.6.0

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

func (*ClusterAuthenticationSpec) DeepCopyInto added in v1.6.0

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

type ClusterDataSource added in v1.6.0

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

	Spec   ClusterDataSourceSpec   `json:"spec"`
	Status ClusterDataSourceStatus `json:"status,omitempty"`
}

ClusterDataSource is the Schema for the clusterdatasources API

func (*ClusterDataSource) DeepCopy added in v1.6.0

func (in *ClusterDataSource) DeepCopy() *ClusterDataSource

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

func (*ClusterDataSource) DeepCopyInto added in v1.6.0

func (in *ClusterDataSource) DeepCopyInto(out *ClusterDataSource)

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

func (*ClusterDataSource) DeepCopyObject added in v1.6.0

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

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

type ClusterDataSourceList added in v1.6.0

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

ClusterDataSourceList contains a list of ClusterDataSource

func (*ClusterDataSourceList) DeepCopy added in v1.6.0

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

func (*ClusterDataSourceList) DeepCopyInto added in v1.6.0

func (in *ClusterDataSourceList) DeepCopyInto(out *ClusterDataSourceList)

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

func (*ClusterDataSourceList) DeepCopyObject added in v1.6.0

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

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

type ClusterDataSourceSpec added in v1.6.0

type ClusterDataSourceSpec struct {

	// Schema is the name of the database for the Cluster. This value is immutable.
	// The value defaults to the namespace and name of the [ClusterDeployment] with some short random suffix.
	Schema string `json:"schema"`
	// DataSource references the [DataSource] object (in the same namespace) that provides database connection
	// information and credentials.
	DataSource string `json:"dataSource"`
}

ClusterDataSourceSpec defines the desired state of ClusterDataSource

func (*ClusterDataSourceSpec) DeepCopy added in v1.6.0

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

func (*ClusterDataSourceSpec) DeepCopyInto added in v1.6.0

func (in *ClusterDataSourceSpec) DeepCopyInto(out *ClusterDataSourceSpec)

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

type ClusterDataSourceStatus added in v1.6.0

type ClusterDataSourceStatus struct {
	// KineDataSourceSecret is the name of the Secret containing credentials for the Kine datastore connection.
	// Created and managed by the controller.
	KineDataSourceSecret string `json:"kineDataSourceSecret,omitempty"`
	// CASecret is the name of the Secret containing the CA certificate used to establish a TLS-secured
	// connection to the datastore, if applicable.
	CASecret string `json:"caSecret,omitempty"`
	// Error contains a description of any errors that occurred, if applicable. It is omitted if no errors are present.
	Error string `json:"error,omitempty"`
	// ObservedGeneration is the latest source generation observed by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Ready indicates whether the object is fully initialized and operational.
	Ready bool `json:"ready"`
}

ClusterDataSourceStatus defines the observed state of ClusterDataSource

func (*ClusterDataSourceStatus) DeepCopy added in v1.6.0

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

func (*ClusterDataSourceStatus) DeepCopyInto added in v1.6.0

func (in *ClusterDataSourceStatus) DeepCopyInto(out *ClusterDataSourceStatus)

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

type ClusterDeployment

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

	Spec   ClusterDeploymentSpec   `json:"spec"`
	Status ClusterDeploymentStatus `json:"status,omitempty"`
}

ClusterDeployment is the Schema for the ClusterDeployments API

func (*ClusterDeployment) AddHelmValues

func (in *ClusterDeployment) AddHelmValues(fn func(map[string]any) error) error

AddHelmValues loads current values, applies fn, and persists the result. The callback receives a non-nil map.

func (*ClusterDeployment) DeepCopy

func (in *ClusterDeployment) DeepCopy() *ClusterDeployment

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

func (*ClusterDeployment) DeepCopyInto

func (in *ClusterDeployment) DeepCopyInto(out *ClusterDeployment)

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

func (*ClusterDeployment) DeepCopyObject

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

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

func (*ClusterDeployment) GetConditions

func (in *ClusterDeployment) GetConditions() *[]metav1.Condition

func (*ClusterDeployment) HelmValues

func (in *ClusterDeployment) HelmValues() (map[string]any, error)

HelmValues returns a non-nil map of Helm values from [ClusterDeployment.Spec] Config field. Nil, empty, and "null" payloads are treated as empty values.

func (*ClusterDeployment) SetHelmValues

func (in *ClusterDeployment) SetHelmValues(values map[string]any) error

SetHelmValues stores Helm values in [ClusterDeployment.Spec] Config field as JSON bytes. Passing nil values clears [ClusterDeployment.Spec] Config field.

type ClusterDeploymentList

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

ClusterDeploymentList contains a list of ClusterDeployment

func (*ClusterDeploymentList) DeepCopy

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

func (*ClusterDeploymentList) DeepCopyInto

func (in *ClusterDeploymentList) DeepCopyInto(out *ClusterDeploymentList)

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

func (*ClusterDeploymentList) DeepCopyObject

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

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

type ClusterDeploymentRef added in v1.4.0

type ClusterDeploymentRef struct {
	Namespace string `json:"namespace"`
	Name      string `json:"name"`
}

ClusterDeploymentRef is the reference to the existing ClusterDeployment object.

func (*ClusterDeploymentRef) DeepCopy added in v1.4.0

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

func (*ClusterDeploymentRef) DeepCopyInto added in v1.4.0

func (in *ClusterDeploymentRef) DeepCopyInto(out *ClusterDeploymentRef)

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

type ClusterDeploymentSpec

type ClusterDeploymentSpec struct {
	// Config allows to provide parameters for template customization.
	// If no Config provided, the field will be populated with the default values for
	// the template and DryRun will be enabled.
	Config *apiextv1.JSON `json:"config,omitempty"`

	// PropagateCredentials indicates whether credentials should be propagated
	// for use by CCM (Cloud Controller Manager).
	PropagateCredentials *bool `json:"propagateCredentials,omitempty"`

	// Template is a reference to a Template object located in the same namespace.
	Template string `json:"template"`
	// Name reference to the related [Credential] object located in the same namespace.
	Credential string `json:"credential,omitempty"`
	// Name reference to the related [ClusterAuthentication] object.
	ClusterAuth string `json:"clusterAuth,omitempty"`
	// DataSource is the name reference to the related [DataSource] object located in the same namespace.
	DataSource string `json:"dataSource,omitempty"`
	// IPAMClaim defines IP Address Management (IPAM) requirements for the cluster.
	// It can either reference an existing IPAM claim or specify an inline claim.
	IPAMClaim ClusterIPAMClaimType `json:"ipamClaim,omitempty"`
	// ServiceSpec is spec related to deployment of services.
	ServiceSpec ServiceSpec `json:"serviceSpec,omitempty"`
	// DryRun specifies whether the template should be applied after validation or only validated.
	DryRun bool `json:"dryRun,omitempty"`

	// CleanupOnDeletion specifies whether potentially orphaned Services and PVCs
	// should be removed during the object deletion.
	// This is a best-effort cleanup, if there is no possibility to acquire
	// a managed cluster's kubeconfig, the cleanup will NOT happen.
	CleanupOnDeletion bool `json:"cleanupOnDeletion,omitempty"`
}

ClusterDeploymentSpec defines the desired state of ClusterDeployment

func (*ClusterDeploymentSpec) DeepCopy

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

func (*ClusterDeploymentSpec) DeepCopyInto

func (in *ClusterDeploymentSpec) DeepCopyInto(out *ClusterDeploymentSpec)

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

type ClusterDeploymentStatus

type ClusterDeploymentStatus struct {
	// Services contains details for the state of services.
	Services []ServiceState `json:"services,omitempty"`
	// ServicesUpgradePaths contains details for the state of services upgrade paths.
	ServicesUpgradePaths []ServiceUpgradePaths `json:"servicesUpgradePaths,omitempty"`
	// Currently compatible exact Kubernetes version of the cluster. Being set only if
	// provided by the corresponding ClusterTemplate.
	KubernetesVersion string `json:"k8sVersion,omitempty"`
	// Region shows the region the [ClusterDeployment] targets.
	Region string `json:"region,omitempty"`

	// Conditions contains details for the current state of the ClusterDeployment.
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// AvailableUpgrades is the list of ClusterTemplate names to which
	// this cluster can be upgraded. It can be an empty array, which means no upgrades are
	// available.
	AvailableUpgrades []string `json:"availableUpgrades,omitempty"`

	// ObservedGeneration is the last observed generation.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

ClusterDeploymentStatus defines the observed state of ClusterDeployment

func (*ClusterDeploymentStatus) DeepCopy

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

func (*ClusterDeploymentStatus) DeepCopyInto

func (in *ClusterDeploymentStatus) DeepCopyInto(out *ClusterDeploymentStatus)

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

type ClusterIPAM

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

	Spec   ClusterIPAMSpec   `json:"spec,omitempty"`
	Status ClusterIPAMStatus `json:"status,omitempty"`
}

ClusterIPAM is the Schema for the clusteripams API

func (*ClusterIPAM) DeepCopy

func (in *ClusterIPAM) DeepCopy() *ClusterIPAM

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

func (*ClusterIPAM) DeepCopyInto

func (in *ClusterIPAM) DeepCopyInto(out *ClusterIPAM)

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

func (*ClusterIPAM) DeepCopyObject

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

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

type ClusterIPAMClaim

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

	Spec   ClusterIPAMClaimSpec   `json:"spec,omitempty"`
	Status ClusterIPAMClaimStatus `json:"status,omitempty"`
}

ClusterIPAMClaim is the Schema for the clusteripamclaims API

func (*ClusterIPAMClaim) DeepCopy

func (in *ClusterIPAMClaim) DeepCopy() *ClusterIPAMClaim

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

func (*ClusterIPAMClaim) DeepCopyInto

func (in *ClusterIPAMClaim) DeepCopyInto(out *ClusterIPAMClaim)

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

func (*ClusterIPAMClaim) DeepCopyObject

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

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

func (*ClusterIPAMClaim) Validate

func (c *ClusterIPAMClaim) Validate() error

type ClusterIPAMClaimList

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

ClusterIPAMClaimList contains a list of ClusterIPAMClaim

func (*ClusterIPAMClaimList) DeepCopy

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

func (*ClusterIPAMClaimList) DeepCopyInto

func (in *ClusterIPAMClaimList) DeepCopyInto(out *ClusterIPAMClaimList)

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

func (*ClusterIPAMClaimList) DeepCopyObject

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

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

type ClusterIPAMClaimSpec

type ClusterIPAMClaimSpec struct {

	// Provider is the name of the provider that this claim will be consumed by
	Provider string `json:"provider"`

	// Cluster is the reference to the [ClusterDeployment] that this claim is for
	Cluster string `json:"cluster,omitempty"`

	// ClusterIPAMRef is the reference to the [ClusterIPAM] resource that this claim is for
	ClusterIPAMRef string `json:"clusterIPAMRef,omitempty"`

	// NodeNetwork defines the allocation requisitioning ip addresses for cluster nodes
	NodeNetwork AddressSpaceSpec `json:"nodeNetwork,omitempty"`

	// ClusterNetwork defines the allocation for requisitioning ip addresses for use by the k8s cluster itself
	ClusterNetwork AddressSpaceSpec `json:"clusterNetwork,omitempty"`

	// ExternalNetwork defines the allocation for requisitioning ip addresses for use by services such as load balancers
	ExternalNetwork AddressSpaceSpec `json:"externalNetwork,omitempty"`
}

ClusterIPAMClaimSpec defines the desired state of ClusterIPAMClaim

func (*ClusterIPAMClaimSpec) DeepCopy

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

func (*ClusterIPAMClaimSpec) DeepCopyInto

func (in *ClusterIPAMClaimSpec) DeepCopyInto(out *ClusterIPAMClaimSpec)

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

type ClusterIPAMClaimStatus

type ClusterIPAMClaimStatus struct {

	// Conditions contains details for the current state of the [ClusterIPAMClaim]
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Bound is a flag to indicate that the claim is bound because all ip addresses are allocated
	Bound bool `json:"bound"`
}

ClusterIPAMClaimStatus defines the observed state of ClusterIPAMClaim

func (*ClusterIPAMClaimStatus) DeepCopy

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

func (*ClusterIPAMClaimStatus) DeepCopyInto

func (in *ClusterIPAMClaimStatus) DeepCopyInto(out *ClusterIPAMClaimStatus)

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

type ClusterIPAMClaimType

type ClusterIPAMClaimType struct {
	// ClusterIPAMClaimSpec defines the inline IPAM claim specification if no reference is provided.
	// This allows for dynamic IP address allocation during cluster provisioning.
	ClusterIPAMClaimSpec *ClusterIPAMClaimSpec `json:"spec,omitempty"`

	// ClusterIPAMClaimRef is the name of an existing ClusterIPAMClaim resource to use.
	ClusterIPAMClaimRef string `json:"ref,omitempty"`
}

ClusterIPAMClaimType represents the IPAM claim configuration for a cluster deployment. It allows referencing an existing claim or defining a new one inline.

func (*ClusterIPAMClaimType) DeepCopy

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

func (*ClusterIPAMClaimType) DeepCopyInto

func (in *ClusterIPAMClaimType) DeepCopyInto(out *ClusterIPAMClaimType)

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

type ClusterIPAMList

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

ClusterIPAMList contains a list of ClusterIPAM

func (*ClusterIPAMList) DeepCopy

func (in *ClusterIPAMList) DeepCopy() *ClusterIPAMList

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

func (*ClusterIPAMList) DeepCopyInto

func (in *ClusterIPAMList) DeepCopyInto(out *ClusterIPAMList)

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

func (*ClusterIPAMList) DeepCopyObject

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

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

type ClusterIPAMPhase

type ClusterIPAMPhase string

ClusterIPAMPhase represents the phase of the ClusterIPAM.

const (
	ClusterIPAMPhasePending ClusterIPAMPhase = "Pending"
	ClusterIPAMPhaseBound   ClusterIPAMPhase = "Bound"
)

type ClusterIPAMProviderData

type ClusterIPAMProviderData struct {
	// Data is the IPAM provider specific data
	Data *apiextv1.JSON `json:"config,omitempty"`
	// Name of the IPAM provider data
	Name string `json:"name,omitempty"`
	// Ready indicates that the IPAM provider data is ready
	Ready bool `json:"ready,omitempty"`
}

func (*ClusterIPAMProviderData) DeepCopy

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

func (*ClusterIPAMProviderData) DeepCopyInto

func (in *ClusterIPAMProviderData) DeepCopyInto(out *ClusterIPAMProviderData)

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

type ClusterIPAMSpec

type ClusterIPAMSpec struct {

	// The provider that this claim will be consumed by
	Provider string `json:"provider,omitempty"`

	// ClusterIPAMClaimRef is a reference to the [ClusterIPAMClaim] that this [ClusterIPAM] is bound to.
	ClusterIPAMClaimRef string `json:"clusterIPAMClaimRef,omitempty"`
}

ClusterIPAMSpec defines the desired state of ClusterIPAM

func (*ClusterIPAMSpec) DeepCopy

func (in *ClusterIPAMSpec) DeepCopy() *ClusterIPAMSpec

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

func (*ClusterIPAMSpec) DeepCopyInto

func (in *ClusterIPAMSpec) DeepCopyInto(out *ClusterIPAMSpec)

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

type ClusterIPAMStatus

type ClusterIPAMStatus struct {

	// Phase is the current phase of the ClusterIPAM.
	Phase ClusterIPAMPhase `json:"phase,omitempty"`

	// ProviderData is the provider specific data produced for the ClusterIPAM.
	// This field is represented as a list, because it will store multiple entries
	// for different networks - nodes, cluster (pods, services), external - for
	// the same provider.
	ProviderData []ClusterIPAMProviderData `json:"providerData,omitempty"`
}

ClusterIPAMStatus defines the observed state of ClusterIPAM

func (*ClusterIPAMStatus) DeepCopy

func (in *ClusterIPAMStatus) DeepCopy() *ClusterIPAMStatus

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

func (*ClusterIPAMStatus) DeepCopyInto

func (in *ClusterIPAMStatus) DeepCopyInto(out *ClusterIPAMStatus)

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

type ClusterIdentity added in v1.5.0

type ClusterIdentity struct {
	GroupVersionKind `json:",inline"`
	// References lists the objects associated with this identity. These may include transitive dependencies
	// such as referenced Secrets required by the identity
	References []ClusterIdentityReference `json:"references,omitempty"`
}

ClusterIdentity defines a Cluster API provider's ClusterIdentity object with its references. It represents a unique identity used by infrastructure providers to access and manage resources

func (*ClusterIdentity) DeepCopy added in v1.5.0

func (in *ClusterIdentity) DeepCopy() *ClusterIdentity

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

func (*ClusterIdentity) DeepCopyInto added in v1.5.0

func (in *ClusterIdentity) DeepCopyInto(out *ClusterIdentity)

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

type ClusterIdentityReference added in v1.5.0

type ClusterIdentityReference struct {
	GroupVersionKind `json:",inline"`

	// NameFieldPath specifies the field path in the ClusterIdentity object where the name of
	// the referenced object can be found. Cannot start with a dot ('.')
	NameFieldPath string `json:"nameFieldPath"`

	// NamespaceFieldPath specifies the field path in the ClusterIdentity object where the namespace of
	// the referenced object can be found. Cannot start with a dot ('.'). Defaults to the system namespace
	NamespaceFieldPath string `json:"namespaceFieldPath,omitempty"`
}

ClusterIdentityReference defines how to locate and resolve a referenced object associated with a ClusterIdentity

func (*ClusterIdentityReference) DeepCopy added in v1.5.0

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

func (*ClusterIdentityReference) DeepCopyInto added in v1.5.0

func (in *ClusterIdentityReference) DeepCopyInto(out *ClusterIdentityReference)

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

type ClusterTemplate

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

	Spec   ClusterTemplateSpec   `json:"spec,omitempty"`
	Status ClusterTemplateStatus `json:"status,omitempty"`
}

ClusterTemplate is the Schema for the clustertemplates API

func (*ClusterTemplate) DeepCopy

func (in *ClusterTemplate) DeepCopy() *ClusterTemplate

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

func (*ClusterTemplate) DeepCopyInto

func (in *ClusterTemplate) DeepCopyInto(out *ClusterTemplate)

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

func (*ClusterTemplate) DeepCopyObject

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

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

func (*ClusterTemplate) FillStatusWithProviders

func (t *ClusterTemplate) FillStatusWithProviders(annotations map[string]string) error

FillStatusWithProviders sets the status of the template with providers either from the spec or from the given annotations.

func (*ClusterTemplate) GetCommonStatus

func (t *ClusterTemplate) GetCommonStatus() *TemplateStatusCommon

GetCommonStatus returns common status of the Template.

func (*ClusterTemplate) GetHelmSpec

func (t *ClusterTemplate) GetHelmSpec() *HelmSpec

GetHelmSpec returns .spec.helm of the Template.

func (*ClusterTemplate) GetSpecProviders

func (t *ClusterTemplate) GetSpecProviders() Providers

GetSpecProviders returns .spec.providers of the Template.

type ClusterTemplateChain

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

	Spec   TemplateChainSpec   `json:"spec,omitempty"`
	Status TemplateChainStatus `json:"status,omitempty"`
}

ClusterTemplateChain is the Schema for the clustertemplatechains API

func (*ClusterTemplateChain) DeepCopy

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

func (*ClusterTemplateChain) DeepCopyInto

func (in *ClusterTemplateChain) DeepCopyInto(out *ClusterTemplateChain)

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

func (*ClusterTemplateChain) DeepCopyObject

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

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

func (*ClusterTemplateChain) GetSpec

func (*ClusterTemplateChain) GetStatus

func (t *ClusterTemplateChain) GetStatus() *TemplateChainStatus

func (*ClusterTemplateChain) Kind

func (*ClusterTemplateChain) Kind() string

func (*ClusterTemplateChain) TemplateKind

func (*ClusterTemplateChain) TemplateKind() string

type ClusterTemplateChainList

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

ClusterTemplateChainList contains a list of ClusterTemplateChain

func (*ClusterTemplateChainList) DeepCopy

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

func (*ClusterTemplateChainList) DeepCopyInto

func (in *ClusterTemplateChainList) DeepCopyInto(out *ClusterTemplateChainList)

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

func (*ClusterTemplateChainList) DeepCopyObject

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

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

type ClusterTemplateList

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

ClusterTemplateList contains a list of ClusterTemplate

func (*ClusterTemplateList) DeepCopy

func (in *ClusterTemplateList) DeepCopy() *ClusterTemplateList

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

func (*ClusterTemplateList) DeepCopyInto

func (in *ClusterTemplateList) DeepCopyInto(out *ClusterTemplateList)

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

func (*ClusterTemplateList) DeepCopyObject

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

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

type ClusterTemplateSpec

type ClusterTemplateSpec struct {
	Helm HelmSpec `json:"helm"`
	// Holds key-value pairs with compatibility [contract versions],
	// where the key is the name of the provider,
	// and the value is the provider contract version
	// required to be supported by the provider.
	//
	// [contract versions]: https://cluster-api.sigs.k8s.io/developer/providers/contracts
	ProviderContracts CompatibilityContracts `json:"providerContracts,omitempty"`
	// Kubernetes exact version in the SemVer format provided by this ClusterTemplate.
	KubernetesVersion string `json:"k8sVersion,omitempty"`
	// Providers represent required CAPI providers.
	// Should be set if not present in the Helm chart metadata.
	Providers Providers `json:"providers,omitempty"`
}

ClusterTemplateSpec defines the desired state of ClusterTemplate

func (*ClusterTemplateSpec) DeepCopy

func (in *ClusterTemplateSpec) DeepCopy() *ClusterTemplateSpec

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

func (*ClusterTemplateSpec) DeepCopyInto

func (in *ClusterTemplateSpec) DeepCopyInto(out *ClusterTemplateSpec)

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

type ClusterTemplateStatus

type ClusterTemplateStatus struct {
	// Holds key-value pairs with compatibility [contract versions],
	// where the key is the name of the provider,
	// and the value is the provider contract version
	// required to be supported by the provider.
	//
	// [contract versions]: https://cluster-api.sigs.k8s.io/developer/providers/contracts
	ProviderContracts CompatibilityContracts `json:"providerContracts,omitempty"`
	// Kubernetes exact version in the SemVer format provided by this ClusterTemplate.
	KubernetesVersion string `json:"k8sVersion,omitempty"`
	// Providers represent required CAPI providers.
	Providers Providers `json:"providers,omitempty"`

	TemplateStatusCommon `json:",inline"`
}

ClusterTemplateStatus defines the observed state of ClusterTemplate

func (*ClusterTemplateStatus) DeepCopy

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

func (*ClusterTemplateStatus) DeepCopyInto

func (in *ClusterTemplateStatus) DeepCopyInto(out *ClusterTemplateStatus)

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

type CompatibilityContracts

type CompatibilityContracts map[string]string

Holds key-value pairs with compatibility contract versions, where the key is the core CAPI contract version, and the value is an underscore-delimited (_) list of provider contract versions supported by the core CAPI.

func (CompatibilityContracts) DeepCopy

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

func (CompatibilityContracts) DeepCopyInto

func (in CompatibilityContracts) DeepCopyInto(out *CompatibilityContracts)

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

type Component

type Component struct {
	// Config allows to provide parameters for management component customization.
	// If no Config provided, the field will be populated with the default
	// values for the template.
	Config *apiextv1.JSON `json:"config,omitempty"`
	// Template is the name of the Template associated with this component.
	// If not specified, will be taken from the Release object.
	Template string `json:"template,omitempty"`
}

Component represents KCM management or regional component

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.

func (*Component) HelmValues

func (in *Component) HelmValues() (values map[string]any, err error)

type ComponentStatus

type ComponentStatus struct {
	// Template is the name of the Template associated with this component.
	Template string `json:"template,omitempty"`
	// Error stores as error message in case of failed installation
	Error string `json:"error,omitempty"`
	// ExposedProviders is a list of CAPI providers this component exposes
	ExposedProviders Providers `json:"exposedProviders,omitempty"`
	// Success represents if a component installation was successful
	Success bool `json:"success,omitempty"`
}

ComponentStatus is the status of Management component installation

func (*ComponentStatus) DeepCopy

func (in *ComponentStatus) DeepCopy() *ComponentStatus

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

func (*ComponentStatus) DeepCopyInto

func (in *ComponentStatus) DeepCopyInto(out *ComponentStatus)

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

type ComponentsCommonSpec added in v1.4.0

type ComponentsCommonSpec struct {
	// Core holds the core components that are mandatory.
	// If not specified, will be populated with the default values.
	Core *Core `json:"core,omitempty"`

	// Providers is the list of enabled CAPI providers.
	Providers []Provider `json:"providers,omitempty"`
}

ComponentsCommonSpec defines the desired state of management or regional Components.

func (*ComponentsCommonSpec) DeepCopy added in v1.4.0

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

func (*ComponentsCommonSpec) DeepCopyInto added in v1.4.0

func (in *ComponentsCommonSpec) DeepCopyInto(out *ComponentsCommonSpec)

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

type ComponentsCommonStatus added in v1.4.0

type ComponentsCommonStatus struct {
	// For each CAPI provider name holds its compatibility [contract versions]
	// in a key-value pairs, where the key is the core CAPI contract version,
	// and the value is an underscore-delimited (_) list of provider contract versions
	// supported by the core CAPI.
	//
	// [contract versions]: https://cluster-api.sigs.k8s.io/developer/providers/contracts
	CAPIContracts map[string]CompatibilityContracts `json:"capiContracts,omitempty"`
	// Components indicates the status of installed KCM components and CAPI providers.
	Components map[string]ComponentStatus `json:"components,omitempty"`

	// AvailableProviders holds all available CAPI providers.
	AvailableProviders Providers `json:"availableProviders,omitempty"`
}

ComponentsCommonStatus defines the observed state of enabled management or regional Components.

func (*ComponentsCommonStatus) DeepCopy added in v1.4.0

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

func (*ComponentsCommonStatus) DeepCopyInto added in v1.4.0

func (in *ComponentsCommonStatus) DeepCopyInto(out *ComponentsCommonStatus)

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

type Core

type Core struct {
	// KCM represents the core KCM component and references the KCM template.
	KCM Component `json:"kcm,omitempty"`
	// CAPI represents the core Cluster API component and references the Cluster API template.
	CAPI Component `json:"capi,omitempty"`
}

Core represents a structure describing core Management components.

func (*Core) DeepCopy

func (in *Core) DeepCopy() *Core

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

func (*Core) DeepCopyInto

func (in *Core) DeepCopyInto(out *Core)

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

type CoreProviderTemplate

type CoreProviderTemplate struct {
	// Template references the Template associated with the provider.
	Template string `json:"template"`
}

func (*CoreProviderTemplate) DeepCopy

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

func (*CoreProviderTemplate) DeepCopyInto

func (in *CoreProviderTemplate) DeepCopyInto(out *CoreProviderTemplate)

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

type Credential

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

	Spec   CredentialSpec   `json:"spec"`
	Status CredentialStatus `json:"status,omitempty"`
}

Credential is the Schema for the credentials API

func (*Credential) DeepCopy

func (in *Credential) DeepCopy() *Credential

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

func (*Credential) DeepCopyInto

func (in *Credential) DeepCopyInto(out *Credential)

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

func (*Credential) DeepCopyObject

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

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

func (*Credential) GetConditions

func (in *Credential) GetConditions() *[]metav1.Condition

type CredentialList

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

CredentialList contains a list of Credential

func (*CredentialList) DeepCopy

func (in *CredentialList) DeepCopy() *CredentialList

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

func (*CredentialList) DeepCopyInto

func (in *CredentialList) DeepCopyInto(out *CredentialList)

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

func (*CredentialList) DeepCopyObject

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

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

type CredentialSpec

type CredentialSpec struct {
	// Reference to the Credential Identity
	IdentityRef *corev1.ObjectReference `json:"identityRef"`

	// Region specifies the region where [ClusterDeployment] resources using
	// this [Credential] will be deployed
	Region string `json:"region,omitempty"`
	// Description of the [Credential] object
	Description string `json:"description,omitempty"` // WARN: noop
}

CredentialSpec defines the desired state of Credential

func (*CredentialSpec) DeepCopy

func (in *CredentialSpec) DeepCopy() *CredentialSpec

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

func (*CredentialSpec) DeepCopyInto

func (in *CredentialSpec) DeepCopyInto(out *CredentialSpec)

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

type CredentialStatus

type CredentialStatus struct {

	// Conditions contains details for the current state of the [Credential].
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Ready holds the readiness of [Credential].
	Ready bool `json:"ready"`
}

CredentialStatus defines the observed state of Credential

func (*CredentialStatus) DeepCopy

func (in *CredentialStatus) DeepCopy() *CredentialStatus

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

func (*CredentialStatus) DeepCopyInto

func (in *CredentialStatus) DeepCopyInto(out *CredentialStatus)

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

type DataSource added in v1.6.0

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

	Spec DataSourceSpec `json:"spec"`
}

DataSource is the Schema for the datasources API

func (*DataSource) DeepCopy added in v1.6.0

func (in *DataSource) DeepCopy() *DataSource

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

func (*DataSource) DeepCopyInto added in v1.6.0

func (in *DataSource) DeepCopyInto(out *DataSource)

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

func (*DataSource) DeepCopyObject added in v1.6.0

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

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

type DataSourceAuth added in v1.6.0

type DataSourceAuth struct {
	// Username is a reference to a secret key containing the username credential
	// used for data source authentication.
	Username SecretKeyReference `json:"username"`

	// Password is a reference to a secret key containing the password credential
	// used for data source authentication.
	Password SecretKeyReference `json:"password"`
}

DataSourceAuth represents authentication credentials for connecting to a data source. It contains references to secrets that store the username and password required for authenticating with external data sources.

func (*DataSourceAuth) DeepCopy added in v1.6.0

func (in *DataSourceAuth) DeepCopy() *DataSourceAuth

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

func (*DataSourceAuth) DeepCopyInto added in v1.6.0

func (in *DataSourceAuth) DeepCopyInto(out *DataSourceAuth)

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

type DataSourceList added in v1.6.0

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

DataSourceList contains a list of DataSource

func (*DataSourceList) DeepCopy added in v1.6.0

func (in *DataSourceList) DeepCopy() *DataSourceList

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

func (*DataSourceList) DeepCopyInto added in v1.6.0

func (in *DataSourceList) DeepCopyInto(out *DataSourceList)

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

func (*DataSourceList) DeepCopyObject added in v1.6.0

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

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

type DataSourceSpec added in v1.6.0

type DataSourceSpec struct {
	// CertificateAuthority optionally specifies the reference to a Secret containing
	// the certificate authority (CA) certificate used to verify the data source's
	// server certificate during TLS handshake.
	CertificateAuthority *SecretKeyReference `json:"certificateAuthority,omitempty"`

	// Auth specifies the authentication configuration for accessing the data source.
	// This field contains credentials required to establish
	// a secure connection to the external data source.
	Auth DataSourceAuth `json:"auth"`

	// Type specifies the database type to connect to the data source.
	Type DatabaseType `json:"type"`

	// Endpoints contains one or more host/port pairs that clients should use to connect to the data source.
	//
	// Only IP:port or FQDN:port, no schema and/or parameters are required.
	Endpoints []string `json:"endpoints"`
}

DataSourceSpec defines the desired state of DataSource

func (*DataSourceSpec) DeepCopy added in v1.6.0

func (in *DataSourceSpec) DeepCopy() *DataSourceSpec

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

func (*DataSourceSpec) DeepCopyInto added in v1.6.0

func (in *DataSourceSpec) DeepCopyInto(out *DataSourceSpec)

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

type DatabaseType added in v1.6.0

type DatabaseType string

DatabaseType represents the type of backend used for connecting to external data source.

type EmbeddedBucketSpec

type EmbeddedBucketSpec struct {
	sourcev1.BucketSpec `json:",inline"`
}

EmbeddedBucketSpec is the embedded github.com/fluxcd/source-controller/api/v1.BucketSpec.

func (*EmbeddedBucketSpec) DeepCopy

func (in *EmbeddedBucketSpec) DeepCopy() *EmbeddedBucketSpec

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

func (*EmbeddedBucketSpec) DeepCopyInto

func (in *EmbeddedBucketSpec) DeepCopyInto(out *EmbeddedBucketSpec)

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

type EmbeddedGitRepositorySpec

type EmbeddedGitRepositorySpec struct {
	sourcev1.GitRepositorySpec `json:",inline"`
}

EmbeddedGitRepositorySpec is the embedded github.com/fluxcd/source-controller/api/v1.GitRepositorySpec.

func (*EmbeddedGitRepositorySpec) DeepCopy

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

func (*EmbeddedGitRepositorySpec) DeepCopyInto

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

type EmbeddedOCIRepositorySpec

type EmbeddedOCIRepositorySpec struct {
	sourcev1.OCIRepositorySpec `json:",inline"`
}

EmbeddedOCIRepositorySpec is the embedded github.com/fluxcd/source-controller/api/v1.OCIRepositorySpec.

func (*EmbeddedOCIRepositorySpec) DeepCopy

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

func (*EmbeddedOCIRepositorySpec) DeepCopyInto

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

type GroupVersionKind

type GroupVersionKind struct {
	Group   string `json:"group"`
	Version string `json:"version"`
	Kind    string `json:"kind"`
}

GroupVersionKind unambiguously identifies a kind. It doesn't anonymously include GroupVersion to avoid automatic coercion. It doesn't use a GroupVersion to avoid custom marshalling Note: mirror of https://github.com/kubernetes/apimachinery/blob/v0.32.3/pkg/runtime/schema/group_version.go#L140-L146

func (*GroupVersionKind) DeepCopy

func (in *GroupVersionKind) DeepCopy() *GroupVersionKind

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

func (*GroupVersionKind) DeepCopyInto

func (in *GroupVersionKind) DeepCopyInto(out *GroupVersionKind)

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

type HelmSpec

type HelmSpec struct {
	// ChartSpec defines the desired state of the HelmChart to be created by the controller
	ChartSpec *sourcev1.HelmChartSpec `json:"chartSpec,omitempty"`

	// ChartRef is a reference to a source controller resource containing the
	// Helm chart representing the template.
	ChartRef *helmcontrollerv2.CrossNamespaceSourceReference `json:"chartRef,omitempty"`

	// ChartSource is a source of a Helm chart representing the template.
	ChartSource *SourceSpec `json:"chartSource,omitempty"`
}

HelmSpec references a Helm chart representing the KCM template

func (*HelmSpec) DeepCopy

func (in *HelmSpec) DeepCopy() *HelmSpec

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

func (*HelmSpec) DeepCopyInto

func (in *HelmSpec) DeepCopyInto(out *HelmSpec)

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

func (*HelmSpec) String

func (s *HelmSpec) String() string

type KCMComponentInfo added in v1.9.0

type KCMComponentInfo struct {
	// ChartName is the name of the KCM Helm chart (e.g., "kcm" or "kcm-regional").
	ChartName string
	// DefaultTemplate is the default ProviderTemplate name from the Release.
	DefaultTemplate string
	// ReleaseName is the Helm release name (spec.releaseName in the HelmRelease).
	ReleaseName string
}

KCMComponentInfo holds KCM-specific component metadata used during reconciliation.

func (*KCMComponentInfo) DeepCopy added in v1.9.0

func (in *KCMComponentInfo) DeepCopy() *KCMComponentInfo

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

func (*KCMComponentInfo) DeepCopyInto added in v1.9.0

func (in *KCMComponentInfo) DeepCopyInto(out *KCMComponentInfo)

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

type LocalSourceRef

type LocalSourceRef struct {

	// Kind is the kind of the local source.
	Kind string `json:"kind"`

	// Name is the name of the local source.
	Name string `json:"name"`

	// Namespace is the namespace of the local source. Cross-namespace references
	// are only allowed when the Kind is one of [github.com/fluxcd/source-controller/api/v1.GitRepository],
	// [github.com/fluxcd/source-controller/api/v1.Bucket] or [github.com/fluxcd/source-controller/api/v1.OCIRepository].
	// If the Kind is ConfigMap or Secret, the namespace will be ignored.
	Namespace string `json:"namespace,omitempty"`
}

LocalSourceRef defines the reference to the local resource to be used as the source.

func (*LocalSourceRef) DeepCopy

func (in *LocalSourceRef) DeepCopy() *LocalSourceRef

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

func (*LocalSourceRef) DeepCopyInto

func (in *LocalSourceRef) DeepCopyInto(out *LocalSourceRef)

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

type Management

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

	Spec   ManagementSpec   `json:"spec,omitempty"`
	Status ManagementStatus `json:"status,omitempty"`
}

Management is the Schema for the managements API

func (*Management) Components added in v1.4.0

func (in *Management) Components() ComponentsCommonSpec

Components returns core components and a list of providers defined in the Management object

func (*Management) DeepCopy

func (in *Management) DeepCopy() *Management

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

func (*Management) DeepCopyInto

func (in *Management) DeepCopyInto(out *Management)

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

func (*Management) DeepCopyObject

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

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

func (*Management) GetComponentsStatus added in v1.4.0

func (in *Management) GetComponentsStatus() *ComponentsCommonStatus

GetComponentsStatus returns the common status for enabled components

func (*Management) GetConditions added in v1.1.0

func (in *Management) GetConditions() *[]metav1.Condition

func (*Management) HelmReleasePrefix added in v1.9.0

func (*Management) HelmReleasePrefix() string

HelmReleasePrefix returns an empty string since Management HelmReleases don't need a prefix.

func (*Management) KCMComponentInfo added in v1.9.0

func (*Management) KCMComponentInfo(release *Release, kcmReleaseName string) KCMComponentInfo

KCMComponentInfo returns the KCM component metadata. The kcmReleaseName parameter should be provided by the controller from its configuration.

func (*Management) Templates

func (in *Management) Templates() []string

Templates returns a list of provider templates explicitly defined in the Management object

type ManagementBackup

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

	Spec   ManagementBackupSpec   `json:"spec,omitempty"`
	Status ManagementBackupStatus `json:"status,omitempty"`
}

ManagementBackup is the Schema for the managementbackups API

func (*ManagementBackup) DeepCopy

func (in *ManagementBackup) DeepCopy() *ManagementBackup

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

func (*ManagementBackup) DeepCopyInto

func (in *ManagementBackup) DeepCopyInto(out *ManagementBackup)

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

func (*ManagementBackup) DeepCopyObject

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

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

func (*ManagementBackup) IsCompleted

func (s *ManagementBackup) IsCompleted() bool

IsCompleted checks if the latest underlaying backups have been completed.

func (*ManagementBackup) IsSchedule

func (s *ManagementBackup) IsSchedule() bool

IsSchedule checks if an instance of ManagementBackup is schedulable.

func (*ManagementBackup) TimestampedBackupName

func (s *ManagementBackup) TimestampedBackupName(timestamp time.Time, region string) string

TimestampedBackupName returns the backup name related to scheduled ManagementBackup based on the given timestamp and the region name.

type ManagementBackupList

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

ManagementBackupList contains a list of ManagementBackup

func (*ManagementBackupList) DeepCopy

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

func (*ManagementBackupList) DeepCopyInto

func (in *ManagementBackupList) DeepCopyInto(out *ManagementBackupList)

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

func (*ManagementBackupList) DeepCopyObject

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

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

type ManagementBackupSingleStatus added in v1.4.0

type ManagementBackupSingleStatus struct {
	// NextAttempt indicates the time when the next backup will be created.
	// Always absent for a single [ManagementBackup].
	NextAttempt *metav1.Time `json:"nextAttempt,omitempty"`
	// Time of the most recently created [github.com/vmware-tanzu/velero/pkg/apis/velero/v1.Backup].
	LastBackupTime *metav1.Time `json:"lastBackupTime,omitempty"`
	// Most recently [github.com/vmware-tanzu/velero/pkg/apis/velero/v1.Backup] that has been created.
	LastBackup *velerov1.BackupStatus `json:"lastBackup,omitempty"`
	// Name of most recently created [github.com/vmware-tanzu/velero/pkg/apis/velero/v1.Backup].
	LastBackupName string `json:"lastBackupName,omitempty"`
	// Error stores messages in case of failed backup creation.
	Error string `json:"error,omitempty"`
	// Region reflects the name of a region for which
	// the [github.com/vmware-tanzu/velero/pkg/apis/velero/v1.Backup] has been created.
	Region string `json:"region,omitempty"`
}

ManagementBackupSingleStatus defines the observed state of a single entry of ManagementBackupStatus.

func (*ManagementBackupSingleStatus) DeepCopy added in v1.4.0

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

func (*ManagementBackupSingleStatus) DeepCopyInto added in v1.4.0

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

type ManagementBackupSpec

type ManagementBackupSpec struct {
	// StorageLocation is the name of a [github.com/vmware-tanzu/velero/pkg/apis/velero/v1.StorageLocation]
	// where the backup should be stored.
	StorageLocation string `json:"storageLocation,omitempty"`
	// Schedule is a Cron expression defining when to run the scheduled [ManagementBackup].
	// If not set, the object is considered to be run only once.
	Schedule string `json:"schedule,omitempty"`
	// PerformOnManagementUpgrade indicates that a single [ManagementBackup]
	// should be created and stored in the [ManagementBackup] storage location if not default
	// before the [Management] release upgrade.
	PerformOnManagementUpgrade bool `json:"performOnManagementUpgrade,omitempty"`
}

ManagementBackupSpec defines the desired state of ManagementBackup.

func (*ManagementBackupSpec) DeepCopy

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

func (*ManagementBackupSpec) DeepCopyInto

func (in *ManagementBackupSpec) DeepCopyInto(out *ManagementBackupSpec)

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

type ManagementBackupStatus

type ManagementBackupStatus struct {
	ManagementBackupSingleStatus `json:",inline"`

	// RegionsLastBackups denotes the status of the last backups in the corresponding regions.
	RegionsLastBackups []ManagementBackupSingleStatus `json:"regions,omitempty"`
}

ManagementBackupStatus defines the observed state of ManagementBackup.

func (*ManagementBackupStatus) DeepCopy

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

func (*ManagementBackupStatus) DeepCopyInto

func (in *ManagementBackupStatus) DeepCopyInto(out *ManagementBackupStatus)

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

type ManagementList

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

ManagementList contains a list of Management

func (*ManagementList) DeepCopy

func (in *ManagementList) DeepCopy() *ManagementList

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

func (*ManagementList) DeepCopyInto

func (in *ManagementList) DeepCopyInto(out *ManagementList)

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

func (*ManagementList) DeepCopyObject

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

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

type ManagementSpec

type ManagementSpec struct {

	// Release references the Release object.
	Release string `json:"release"`

	// ComponentsCommonSpec defines the desired state of management components.
	ComponentsCommonSpec `json:",inline"`
}

ManagementSpec defines the desired state of Management

func (*ManagementSpec) DeepCopy

func (in *ManagementSpec) DeepCopy() *ManagementSpec

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

func (*ManagementSpec) DeepCopyInto

func (in *ManagementSpec) DeepCopyInto(out *ManagementSpec)

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

type ManagementStatus

type ManagementStatus struct {

	// Conditions represents the observations of a Management's current state.
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// BackupName is a name of the management cluster scheduled backup.
	BackupName string `json:"backupName,omitempty"`
	// Release indicates the current Release object.
	Release string `json:"release,omitempty"`

	// ComponentsCommonStatus represents the status of enabled components.
	ComponentsCommonStatus `json:",inline"`

	// ObservedGeneration is the last observed generation.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

ManagementStatus defines the observed state of Management

func (*ManagementStatus) DeepCopy

func (in *ManagementStatus) DeepCopy() *ManagementStatus

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

func (*ManagementStatus) DeepCopyInto

func (in *ManagementStatus) DeepCopyInto(out *ManagementStatus)

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

type MatchingCluster added in v1.6.0

type MatchingCluster struct {
	*corev1.ObjectReference `json:",inline"`

	// LastTransitionTime reflects when Deployed state was changed last time.
	LastTransitionTime *metav1.Time `json:"lastTransitionTime,omitempty"`

	// Regional indicates whether given cluster is regional.
	Regional bool `json:"regional"`

	// Deployed indicates whether all services were successfully deployed.
	Deployed bool `json:"deployed"`
}

func (*MatchingCluster) DeepCopy added in v1.6.0

func (in *MatchingCluster) DeepCopy() *MatchingCluster

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

func (*MatchingCluster) DeepCopyInto added in v1.6.0

func (in *MatchingCluster) DeepCopyInto(out *MatchingCluster)

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

type MultiClusterService

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

	Spec   MultiClusterServiceSpec   `json:"spec,omitempty"`
	Status MultiClusterServiceStatus `json:"status,omitempty"`
}

MultiClusterService is the Schema for the multiclusterservices API

func (*MultiClusterService) DeepCopy

func (in *MultiClusterService) DeepCopy() *MultiClusterService

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

func (*MultiClusterService) DeepCopyInto

func (in *MultiClusterService) DeepCopyInto(out *MultiClusterService)

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

func (*MultiClusterService) DeepCopyObject

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

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

type MultiClusterServiceList

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

MultiClusterServiceList contains a list of MultiClusterService

func (*MultiClusterServiceList) DeepCopy

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

func (*MultiClusterServiceList) DeepCopyInto

func (in *MultiClusterServiceList) DeepCopyInto(out *MultiClusterServiceList)

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

func (*MultiClusterServiceList) DeepCopyObject

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

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

type MultiClusterServiceSpec

type MultiClusterServiceSpec struct {
	// ClusterSelector identifies target clusters to manage services on.
	ClusterSelector metav1.LabelSelector `json:"clusterSelector,omitempty"`
	// DependsOn is a list of other MultiClusterServices this one depends on.
	DependsOn []string `json:"dependsOn,omitempty"`
	// ServiceSpec is spec related to deployment of services.
	ServiceSpec ServiceSpec `json:"serviceSpec,omitempty"`
}

MultiClusterServiceSpec defines the desired state of MultiClusterService

func (*MultiClusterServiceSpec) DeepCopy

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

func (*MultiClusterServiceSpec) DeepCopyInto

func (in *MultiClusterServiceSpec) DeepCopyInto(out *MultiClusterServiceSpec)

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

type MultiClusterServiceStatus

type MultiClusterServiceStatus struct {
	// Services contains details for the state of services.
	Services []ServiceState `json:"services,omitempty"`
	// ServicesUpgradePaths contains details for the state of services upgrade paths.
	ServicesUpgradePaths []ServiceUpgradePaths `json:"servicesUpgradePaths,omitempty"`
	// MatchingClusters contains a list of clusters matching MultiClusterService selector
	MatchingClusters []MatchingCluster `json:"matchingClusters,omitempty"`

	// Conditions contains details for the current state of the MultiClusterService.
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// ObservedGeneration is the last observed generation.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

MultiClusterServiceStatus defines the observed state of MultiClusterService.

func (*MultiClusterServiceStatus) DeepCopy

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

func (*MultiClusterServiceStatus) DeepCopyInto

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

type NamedProviderTemplate

type NamedProviderTemplate struct {
	CoreProviderTemplate `json:",inline"`
	// Name of the provider.
	Name string `json:"name"`
}

func (*NamedProviderTemplate) DeepCopy

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

func (*NamedProviderTemplate) DeepCopyInto

func (in *NamedProviderTemplate) DeepCopyInto(out *NamedProviderTemplate)

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

type Provider

type Provider struct {
	Component `json:",inline"`
	// Name of the provider.
	Name string `json:"name"`
}

func (*Provider) DeepCopy

func (in *Provider) DeepCopy() *Provider

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

func (*Provider) DeepCopyInto

func (in *Provider) DeepCopyInto(out *Provider)

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

func (Provider) String

func (p Provider) String() string

type ProviderInterface

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

	Spec ProviderInterfaceSpec `json:"spec,omitempty"`
}

ProviderInterface is the Schema for the ProviderInterface API

func (*ProviderInterface) DeepCopy

func (in *ProviderInterface) DeepCopy() *ProviderInterface

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

func (*ProviderInterface) DeepCopyInto

func (in *ProviderInterface) DeepCopyInto(out *ProviderInterface)

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

func (*ProviderInterface) DeepCopyObject

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

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

type ProviderInterfaceList

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

ProviderInterfaceList contains a list of ProviderInterfaces

func (*ProviderInterfaceList) DeepCopy

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

func (*ProviderInterfaceList) DeepCopyInto

func (in *ProviderInterfaceList) DeepCopyInto(out *ProviderInterfaceList)

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

func (*ProviderInterfaceList) DeepCopyObject

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

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

type ProviderInterfaceSpec

type ProviderInterfaceSpec struct {
	// Description provides a human-readable explanation of what this provider does
	Description string `json:"description,omitempty"`
	// ClusterGVKs defines the Group-Version-Kind resources this provider can manage
	ClusterGVKs []GroupVersionKind `json:"clusterGVKs,omitempty"`
	// ClusterIdentityKinds defines the Kind of identity objects supported by this provider
	//
	// Deprecated: Use ClusterIdentities instead
	ClusterIdentityKinds []string `json:"clusterIdentityKinds,omitempty"`
	// ClusterIdentities defines the cluster identity objects supported by this provider
	ClusterIdentities []ClusterIdentity `json:"clusterIdentities,omitempty"`
}

ProviderInterfaceSpec defines the desired state of ProviderInterface

func (*ProviderInterfaceSpec) DeepCopy

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

func (*ProviderInterfaceSpec) DeepCopyInto

func (in *ProviderInterfaceSpec) DeepCopyInto(out *ProviderInterfaceSpec)

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

type ProviderState added in v1.3.0

type ProviderState struct {
	// Ready is true if the provider is ready
	Ready bool `json:"ready,omitempty"`

	// Suspended is true if the provider is suspended
	Suspended bool `json:"suspended,omitempty"`
}

ProviderState is the state of the provider

func (*ProviderState) DeepCopy added in v1.3.0

func (in *ProviderState) DeepCopy() *ProviderState

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

func (*ProviderState) DeepCopyInto added in v1.3.0

func (in *ProviderState) DeepCopyInto(out *ProviderState)

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

type ProviderTemplate

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

	Spec   ProviderTemplateSpec   `json:"spec,omitempty"`
	Status ProviderTemplateStatus `json:"status,omitempty"`
}

ProviderTemplate is the Schema for the providertemplates API

func (*ProviderTemplate) DeepCopy

func (in *ProviderTemplate) DeepCopy() *ProviderTemplate

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

func (*ProviderTemplate) DeepCopyInto

func (in *ProviderTemplate) DeepCopyInto(out *ProviderTemplate)

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

func (*ProviderTemplate) DeepCopyObject

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

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

func (*ProviderTemplate) FillStatusWithProviders

func (t *ProviderTemplate) FillStatusWithProviders(annotations map[string]string) error

FillStatusWithProviders sets the status of the template with providers either from the spec or from the given annotations.

func (*ProviderTemplate) GetCommonStatus

func (t *ProviderTemplate) GetCommonStatus() *TemplateStatusCommon

GetCommonStatus returns common status of the Template.

func (*ProviderTemplate) GetHelmSpec

func (t *ProviderTemplate) GetHelmSpec() *HelmSpec

GetHelmSpec returns .spec.helm of the Template.

type ProviderTemplateList

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

ProviderTemplateList contains a list of ProviderTemplate

func (*ProviderTemplateList) DeepCopy

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

func (*ProviderTemplateList) DeepCopyInto

func (in *ProviderTemplateList) DeepCopyInto(out *ProviderTemplateList)

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

func (*ProviderTemplateList) DeepCopyObject

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

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

type ProviderTemplateSpec

type ProviderTemplateSpec struct {
	Helm          HelmSpec               `json:"helm,omitempty"`
	CAPIContracts CompatibilityContracts `json:"capiContracts,omitempty"`
	// Providers represent exposed CAPI providers.
	// Should be set if not present in the Helm chart metadata.
	Providers Providers `json:"providers,omitempty"`
}

ProviderTemplateSpec defines the desired state of ProviderTemplate

func (*ProviderTemplateSpec) DeepCopy

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

func (*ProviderTemplateSpec) DeepCopyInto

func (in *ProviderTemplateSpec) DeepCopyInto(out *ProviderTemplateSpec)

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

type ProviderTemplateStatus

type ProviderTemplateStatus struct {
	CAPIContracts CompatibilityContracts `json:"capiContracts,omitempty"`
	// Providers represent exposed CAPI providers.
	Providers Providers `json:"providers,omitempty"`

	TemplateStatusCommon `json:",inline"`
}

ProviderTemplateStatus defines the observed state of ProviderTemplate

func (*ProviderTemplateStatus) DeepCopy

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

func (*ProviderTemplateStatus) DeepCopyInto

func (in *ProviderTemplateStatus) DeepCopyInto(out *ProviderTemplateStatus)

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

type Providers

type Providers []string

Holds different types of CAPI providers.

func (Providers) DeepCopy

func (in Providers) DeepCopy() Providers

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

func (Providers) DeepCopyInto

func (in Providers) DeepCopyInto(out *Providers)

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

type ProvisionerCRD added in v1.1.0

type ProvisionerCRD struct {
	// Group is the API group of the resources
	Group string `json:"group"`

	// Version is the API version of the resources
	Version string `json:"version"`

	// Resources is the list of resources under given APIVersion
	Resources []string `json:"resources"`
}

ProvisionerCRD is a GVRs for a custom resource reconciled by provisioners

func (*ProvisionerCRD) DeepCopy added in v1.1.0

func (in *ProvisionerCRD) DeepCopy() *ProvisionerCRD

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

func (*ProvisionerCRD) DeepCopyInto added in v1.1.0

func (in *ProvisionerCRD) DeepCopyInto(out *ProvisionerCRD)

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

type Region added in v1.4.0

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

	Spec   RegionSpec   `json:"spec,omitempty"`
	Status RegionStatus `json:"status,omitempty"`
}

Region is the Schema for the regions API

func (*Region) Components added in v1.4.0

func (in *Region) Components() ComponentsCommonSpec

Components returns core components and a list of providers defined in the Region object

func (*Region) DeepCopy added in v1.4.0

func (in *Region) DeepCopy() *Region

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

func (*Region) DeepCopyInto added in v1.4.0

func (in *Region) DeepCopyInto(out *Region)

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

func (*Region) DeepCopyObject added in v1.4.0

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

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

func (*Region) GetComponentsStatus added in v1.4.0

func (in *Region) GetComponentsStatus() *ComponentsCommonStatus

GetComponentsStatus returns the common status for enabled components

func (*Region) GetConditions added in v1.4.0

func (in *Region) GetConditions() *[]metav1.Condition

GetConditions returns Region conditions

func (*Region) HelmReleasePrefix added in v1.9.0

func (in *Region) HelmReleasePrefix() string

HelmReleasePrefix returns the Region name as a prefix for HelmRelease names.

func (*Region) KCMComponentInfo added in v1.9.0

func (*Region) KCMComponentInfo(release *Release, _ string) KCMComponentInfo

KCMComponentInfo returns the KCM regional component metadata. The kcmReleaseName parameter is accepted for interface consistency but not used for regional components (they always use CoreKCMRegionalName).

type RegionList added in v1.4.0

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

RegionList contains a list of Regions

func (*RegionList) DeepCopy added in v1.4.0

func (in *RegionList) DeepCopy() *RegionList

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

func (*RegionList) DeepCopyInto added in v1.4.0

func (in *RegionList) DeepCopyInto(out *RegionList)

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

func (*RegionList) DeepCopyObject added in v1.4.0

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

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

type RegionSpec added in v1.4.0

type RegionSpec struct {

	// KubeConfig references the Secret containing the kubeconfig
	// of the cluster being onboarded as a regional cluster.
	// The Secret must reside in the system namespace.
	KubeConfig *fluxmeta.SecretKeyReference `json:"kubeConfig,omitempty"`

	// ClusterDeployment is the reference to the existing ClusterDeployment object
	// to be onboarded as a regional cluster.
	ClusterDeployment *ClusterDeploymentRef `json:"clusterDeployment,omitempty"`

	// ComponentsCommonSpec defines the desired state of regional components.
	ComponentsCommonSpec `json:",inline"`
}

RegionSpec defines the desired state of Region

func (*RegionSpec) DeepCopy added in v1.4.0

func (in *RegionSpec) DeepCopy() *RegionSpec

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

func (*RegionSpec) DeepCopyInto added in v1.4.0

func (in *RegionSpec) DeepCopyInto(out *RegionSpec)

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

type RegionStatus added in v1.4.0

type RegionStatus struct {
	// ComponentsCommonStatus represents the status of enabled components.
	ComponentsCommonStatus `json:",inline"`

	// Conditions represents the observations of a Region's current state.
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// ObservedGeneration is the last observed generation.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

RegionStatus defines the observed state of Region

func (*RegionStatus) DeepCopy added in v1.4.0

func (in *RegionStatus) DeepCopy() *RegionStatus

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

func (*RegionStatus) DeepCopyInto added in v1.4.0

func (in *RegionStatus) DeepCopyInto(out *RegionStatus)

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

type Release

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

	Spec   ReleaseSpec   `json:"spec,omitempty"`
	Status ReleaseStatus `json:"status,omitempty"`
}

Release is the Schema for the releases API

func (*Release) DeepCopy

func (in *Release) DeepCopy() *Release

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

func (*Release) DeepCopyInto

func (in *Release) DeepCopyInto(out *Release)

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

func (*Release) DeepCopyObject

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

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

func (*Release) GetConditions added in v1.1.0

func (in *Release) GetConditions() *[]metav1.Condition

func (*Release) ProviderTemplate

func (in *Release) ProviderTemplate(name string) string

func (*Release) Providers

func (in *Release) Providers() []Provider

func (*Release) Templates

func (in *Release) Templates() []string

type ReleaseList

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

ReleaseList contains a list of Release

func (*ReleaseList) DeepCopy

func (in *ReleaseList) DeepCopy() *ReleaseList

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

func (*ReleaseList) DeepCopyInto

func (in *ReleaseList) DeepCopyInto(out *ReleaseList)

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

func (*ReleaseList) DeepCopyObject

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

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

type ReleaseSpec

type ReleaseSpec struct {
	// Version of the KCM Release in the semver format.
	Version string `json:"version"`
	// KCM references the KCM template.
	KCM CoreProviderTemplate `json:"kcm"`
	// Regional references the KCM regional template.
	Regional CoreProviderTemplate `json:"regional,omitempty"`
	// CAPI references the Cluster API template.
	CAPI CoreProviderTemplate `json:"capi"`
	// Providers contains a list of Providers associated with the Release.
	Providers []NamedProviderTemplate `json:"providers,omitempty"`
}

ReleaseSpec defines the desired state of Release

func (*ReleaseSpec) DeepCopy

func (in *ReleaseSpec) DeepCopy() *ReleaseSpec

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

func (*ReleaseSpec) DeepCopyInto

func (in *ReleaseSpec) DeepCopyInto(out *ReleaseSpec)

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

type ReleaseStatus

type ReleaseStatus struct {

	// Conditions contains details for the current state of the Release
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// ObservedGeneration is the last observed generation.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Ready indicates whether KCM is ready to be upgraded to this Release.
	Ready bool `json:"ready,omitempty"`
}

ReleaseStatus defines the observed state of Release

func (*ReleaseStatus) DeepCopy

func (in *ReleaseStatus) DeepCopy() *ReleaseStatus

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

func (*ReleaseStatus) DeepCopyInto

func (in *ReleaseStatus) DeepCopyInto(out *ReleaseStatus)

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

type RemoteSourceSpec

type RemoteSourceSpec struct {
	// Git is the definition of git repository source.
	Git *EmbeddedGitRepositorySpec `json:"git,omitempty"`

	// Bucket is the definition of bucket source.
	Bucket *EmbeddedBucketSpec `json:"bucket,omitempty"`

	// OCI is the definition of OCI repository source.
	OCI *EmbeddedOCIRepositorySpec `json:"oci,omitempty"`
}

RemoteSourceSpec defines the desired state of the remote source (Git, Bucket, OCI).

func (*RemoteSourceSpec) DeepCopy

func (in *RemoteSourceSpec) DeepCopy() *RemoteSourceSpec

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

func (*RemoteSourceSpec) DeepCopyInto

func (in *RemoteSourceSpec) DeepCopyInto(out *RemoteSourceSpec)

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

type ResourceReference added in v1.1.0

type ResourceReference struct {
	// APIVersion is the API version of the resource
	APIVersion string `json:"apiVersion"`

	// Kind is the kind of the resource
	Kind string `json:"kind"`

	// Name is the name of the resource
	Name string `json:"name"`

	// Namespace is the namespace of the resource
	Namespace string `json:"namespace"`

	// ReadinessRule is a CEL expression that evaluates to true when the resource is ready
	ReadinessRule string `json:"readinessRule"`
}

ResourceReference is a cross-namespace reference to a resource

func (*ResourceReference) DeepCopy added in v1.1.0

func (in *ResourceReference) DeepCopy() *ResourceReference

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

func (*ResourceReference) DeepCopyInto added in v1.1.0

func (in *ResourceReference) DeepCopyInto(out *ResourceReference)

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

type SecretKeyReference added in v1.6.0

type SecretKeyReference struct {
	corev1.SecretReference `json:",inline"`

	// Key is the name of the key for the given Secret reference where the value is stored.
	Key string `json:"key"`
}

SecretKeyReference is the combination of the Secret reference and the key of the stored value.

func (*SecretKeyReference) DeepCopy added in v1.6.0

func (in *SecretKeyReference) DeepCopy() *SecretKeyReference

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

func (*SecretKeyReference) DeepCopyInto added in v1.6.0

func (in *SecretKeyReference) DeepCopyInto(out *SecretKeyReference)

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

type Service

type Service struct {
	// HelmOptions are the options to be passed to the provider for helm installation or updates
	HelmOptions *ServiceHelmOptions `json:"helmOptions,omitempty"`

	// HelmChartAction specifies action on an helm chart
	HelmAction *string `json:"helmAction,omitempty"`

	// Name is the chart release.
	Name string `json:"name"`

	// Namespace is the namespace the release will be installed in.
	// It will default to "default" if not provided.
	Namespace string `json:"namespace,omitempty"`

	// Template is a reference to a Template object located in the same namespace.
	Template string `json:"template"`

	// TemplateChain defines the ServiceTemplateChain object that will be used to deploy the service
	// along with desired ServiceTemplate version.
	TemplateChain string `json:"templateChain,omitempty"`

	// Version is the version of the service template.
	Version string `json:"version,omitempty"`

	// Values is the helm values to be passed to the chart used by the template.
	// The string type is used in order to allow for templating.
	Values string `json:"values,omitempty"`

	// ValuesFrom can reference a ConfigMap or Secret containing helm values.
	ValuesFrom []ValuesFrom `json:"valuesFrom,omitempty"`

	// DependsOn specifies a list of other services that this service depends on.
	DependsOn []ServiceDependsOn `json:"dependsOn,omitempty"`

	// Disable can be set to disable handling of this service.
	Disable bool `json:"disable,omitempty"`
}

Service represents a Service to be deployed.

func (*Service) DeepCopy

func (in *Service) DeepCopy() *Service

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

func (*Service) DeepCopyInto

func (in *Service) DeepCopyInto(out *Service)

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

type ServiceDependsOn added in v1.4.0

type ServiceDependsOn struct {

	// Name is the release name on target cluster.
	Name string `json:"name"`
	// Namespace is the release namespace on target cluster.
	Namespace string `json:"namespace,omitempty"`
}

ServiceDependsOn identifies a service by its release name and namespace.

func (*ServiceDependsOn) DeepCopy added in v1.4.0

func (in *ServiceDependsOn) DeepCopy() *ServiceDependsOn

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

func (*ServiceDependsOn) DeepCopyInto added in v1.4.0

func (in *ServiceDependsOn) DeepCopyInto(out *ServiceDependsOn)

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

type ServiceHelmOptions added in v1.4.0

type ServiceHelmOptions struct {

	// EnableClientCache is a flag to enable Helm client cache. If it is not specified, it will be set to false.
	EnableClientCache *bool `json:"enableClientCache,omitempty"`

	// update dependencies if they are missing before installing the chart
	DependencyUpdate *bool `json:"dependencyUpdate,omitempty"`

	// if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment, StatefulSet, or ReplicaSet
	// are in a ready state before marking the release as successful. It will wait for as long as --timeout
	Wait *bool `json:"wait,omitempty"`

	// if set and --wait enabled, will wait until all Jobs have been completed before marking the release as successful.
	// It will wait for as long as --timeout
	WaitForJobs *bool `json:"waitForJobs,omitempty"`

	// Deprecated: use .installOptions.createNamespace instead.
	CreateNamespace *bool `json:"createNamespace,omitempty"`

	// SkipCRDs controls whether CRDs should be installed during install/upgrade operation.
	// By default, CRDs are installed if not already present.
	SkipCRDs *bool `json:"skipCRDs,omitempty"`

	// if set, the installation process deletes the installation/upgrades on failure.
	// The --wait flag will be set automatically if --atomic is used
	Atomic *bool `json:"atomic,omitempty"`

	// prevent hooks from running during install/upgrade/uninstall
	DisableHooks *bool `json:"disableHooks,omitempty"`

	// if set, the installation process will not validate rendered templates against the Kubernetes OpenAPI Schema
	DisableOpenAPIValidation *bool `json:"disableOpenAPIValidation,omitempty"`

	// time to wait for any individual Kubernetes operation (like Jobs for hooks) (default 5m0s)
	Timeout *metav1.Duration `json:"timeout,omitempty"`

	// SkipSchemaValidation determines if JSON schema validation is disabled.
	SkipSchemaValidation *bool `json:"skipSchemaValidation,omitempty"`

	// Deprecated: use .installOptions.replace instead.
	Replace *bool `json:"replace,omitempty"`

	// Labels that would be added to release metadata.
	Labels *map[string]string `json:"labels,omitempty"`

	// Description is the description of an helm operation
	Description *string `json:"description,omitempty"`

	// UninstallOptions are options specific to helm uninstall
	UninstallOptions *addoncontrollerv1beta1.HelmUninstallOptions `json:"uninstallOptions,omitempty"`

	// UpgradeOptions are options specific to helm upgrade
	UpgradeOptions *addoncontrollerv1beta1.HelmUpgradeOptions `json:"upgradeOptions,omitempty"`

	// InstallOptions are options specific to helm install
	InstallOptions *addoncontrollerv1beta1.HelmInstallOptions `json:"installOptions,omitempty"`
}

func (*ServiceHelmOptions) DeepCopy added in v1.4.0

func (in *ServiceHelmOptions) DeepCopy() *ServiceHelmOptions

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

func (*ServiceHelmOptions) DeepCopyInto added in v1.4.0

func (in *ServiceHelmOptions) DeepCopyInto(out *ServiceHelmOptions)

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

type ServiceSet added in v1.3.0

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

	Spec   ServiceSetSpec   `json:"spec,omitempty"`
	Status ServiceSetStatus `json:"status,omitempty"`
}

ServiceSet is the Schema for the servicesets API

func (*ServiceSet) DeepCopy added in v1.3.0

func (in *ServiceSet) DeepCopy() *ServiceSet

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

func (*ServiceSet) DeepCopyInto added in v1.3.0

func (in *ServiceSet) DeepCopyInto(out *ServiceSet)

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

func (*ServiceSet) DeepCopyObject added in v1.3.0

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

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

type ServiceSetList added in v1.3.0

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

ServiceSetList contains a list of ServiceSet

func (*ServiceSetList) DeepCopy added in v1.3.0

func (in *ServiceSetList) DeepCopy() *ServiceSetList

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

func (*ServiceSetList) DeepCopyInto added in v1.3.0

func (in *ServiceSetList) DeepCopyInto(out *ServiceSetList)

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

func (*ServiceSetList) DeepCopyObject added in v1.3.0

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

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

type ServiceSetOperation added in v1.3.0

type ServiceSetOperation string
const (
	ServiceSetOperationCreate ServiceSetOperation = "create"
	ServiceSetOperationUpdate ServiceSetOperation = "update"
	ServiceSetOperationNone   ServiceSetOperation = "none"
)

type ServiceSetSpec added in v1.3.0

type ServiceSetSpec struct {
	// Cluster is the name of the ClusterDeployment
	Cluster string `json:"cluster"`

	// MultiClusterService is the name of the MultiClusterService
	MultiClusterService string `json:"multiClusterService,omitempty"`

	// Provider is the definition of the provider to use to deploy services defined in the ServiceSet.
	Provider StateManagementProviderConfig `json:"provider"`

	// Services is the list of services to deploy.
	Services []ServiceWithValues `json:"services,omitempty"`
}

ServiceSetSpec defines the desired state of ServiceSet

func (*ServiceSetSpec) DeepCopy added in v1.3.0

func (in *ServiceSetSpec) DeepCopy() *ServiceSetSpec

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

func (*ServiceSetSpec) DeepCopyInto added in v1.3.0

func (in *ServiceSetSpec) DeepCopyInto(out *ServiceSetSpec)

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

type ServiceSetStatus added in v1.3.0

type ServiceSetStatus struct {
	// Cluster contains [k8s.io/api/core/v1.ObjectReference] to the cluster object.
	Cluster *corev1.ObjectReference `json:"cluster,omitempty"`

	// Conditions is a list of conditions for the ServiceSet
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Services is a list of Service states in the ServiceSet
	Services []ServiceState `json:"services,omitempty"`

	// Deployed is true if the ServiceSet has been deployed
	Deployed bool `json:"deployed"`

	// Provider is the state of the provider
	Provider ProviderState `json:"provider,omitempty"`
}

ServiceSetStatus defines the observed state of ServiceSet

func (*ServiceSetStatus) DeepCopy added in v1.3.0

func (in *ServiceSetStatus) DeepCopy() *ServiceSetStatus

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

func (*ServiceSetStatus) DeepCopyInto added in v1.3.0

func (in *ServiceSetStatus) DeepCopyInto(out *ServiceSetStatus)

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

type ServiceSpec

type ServiceSpec struct {

	// SyncMode specifies how services are synced in the target cluster.
	//
	// Deprecated: use .provider.config field to define provider-specific configuration.
	SyncMode string `json:"syncMode,omitempty"`
	// Provider is the definition of the provider to use to deploy services.
	Provider StateManagementProviderConfig `json:"provider,omitempty"`

	// Services is a list of services created via ServiceTemplates
	// that could be installed on the target cluster.
	Services []Service `json:"services,omitempty"`

	// TemplateResourceRefs is a list of resources to collect from the management cluster,
	// the values from which can be used in templates.
	//
	// Deprecated: use .provider.config field to define provider-specific configuration.
	TemplateResourceRefs []addoncontrollerv1beta1.TemplateResourceRef `json:"templateResourceRefs,omitempty"`

	// PolicyRefs references all the ConfigMaps/Secrets/Flux Sources containing kubernetes resources
	// that need to be deployed in the target clusters.
	// The values contained in those resources can be static or leverage Go templates for dynamic customization.
	// When expressed as templates, the values are filled in using information from
	// resources within the management cluster before deployment (Cluster and TemplateResourceRefs)
	//
	// Deprecated: use .provider.config field to define provider-specific configuration.
	PolicyRefs []addoncontrollerv1beta1.PolicyRef `json:"policyRefs,omitempty"`

	// DriftIgnore specifies resources to ignore for drift detection.
	//
	// Deprecated: use .provider.config field to define provider-specific configuration.
	DriftIgnore []libsveltosv1beta1.PatchSelector `json:"driftIgnore,omitempty"`

	// DriftExclusions specifies specific configurations of resources to ignore for drift detection.
	//
	// Deprecated: use .provider.config field to define provider-specific configuration.
	DriftExclusions []libsveltosv1beta1.DriftExclusion `json:"driftExclusions,omitempty"`

	// Priority sets the priority for the services defined in this spec.
	// Higher value means higher priority and lower means lower.
	// In case of conflict with another object managing the service,
	// the one with higher priority will get to deploy its services.
	//
	// Deprecated: use .provider.config field to define provider-specific configuration.
	Priority int32 `json:"priority,omitempty"`

	// StopOnConflict specifies what to do in case of a conflict.
	// E.g. If another object is already managing a service.
	// By default the remaining services will be deployed even if conflict is detected.
	// If set to true, the deployment will stop after encountering the first conflict.
	//
	// Deprecated: use .provider.config field to define provider-specific configuration.
	StopOnConflict bool `json:"stopOnConflict,omitempty"`

	// Reload instances via rolling upgrade when a ConfigMap/Secret mounted as volume is modified.
	//
	// Deprecated: use .provider.config field to define provider-specific configuration.
	Reload bool `json:"reload,omitempty"`

	// ContinueOnError specifies if the services deployment should continue if an error occurs.
	//
	// Deprecated: use .provider.config field to define provider-specific configuration.
	ContinueOnError bool `json:"continueOnError,omitempty"`
}

ServiceSpec contains all the spec related to deployment of services.

func (*ServiceSpec) DeepCopy

func (in *ServiceSpec) DeepCopy() *ServiceSpec

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

func (*ServiceSpec) DeepCopyInto

func (in *ServiceSpec) DeepCopyInto(out *ServiceSpec)

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

type ServiceState added in v1.3.0

type ServiceState struct {

	// Type is the type of the deployment method for the Service
	Type ServiceType `json:"type"`

	// LastStateTransitionTime is the time the State was last transitioned
	LastStateTransitionTime *metav1.Time `json:"lastStateTransitionTime"`

	// Name is the name of the Service
	Name string `json:"name"`

	// Namespace is the namespace of the Service
	Namespace string `json:"namespace"`

	// Template is the name of the ServiceTemplate used to deploy the Service
	Template string `json:"template"`

	// Version is the version of the Service
	Version *string `json:"version,omitempty"`

	// State is the state of the Service
	// +kubebuilder:validation:Enum=Deployed;Provisioning;Failed;Pending;Deleting
	State string `json:"state"`

	// FailureMessage is the reason why the Service failed to deploy
	FailureMessage string `json:"failureMessage,omitempty"`

	// Conditions is a list of conditions for the Service
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

ServiceState is the state of a Service

func (*ServiceState) DeepCopy added in v1.3.0

func (in *ServiceState) DeepCopy() *ServiceState

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

func (*ServiceState) DeepCopyInto added in v1.3.0

func (in *ServiceState) DeepCopyInto(out *ServiceState)

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

type ServiceStatus

type ServiceStatus struct {
	// ClusterName is the name of the associated cluster.
	ClusterName string `json:"clusterName"`
	// ClusterNamespace is the namespace of the associated cluster.
	ClusterNamespace string `json:"clusterNamespace,omitempty"`

	// Conditions contains details for the current state of managed services.
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

ServiceStatus contains details for the state of services.

func (*ServiceStatus) DeepCopy

func (in *ServiceStatus) DeepCopy() *ServiceStatus

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

func (*ServiceStatus) DeepCopyInto

func (in *ServiceStatus) DeepCopyInto(out *ServiceStatus)

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

type ServiceTemplate

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

	Spec   ServiceTemplateSpec   `json:"spec,omitempty"`
	Status ServiceTemplateStatus `json:"status,omitempty"`
}

ServiceTemplate is the Schema for the servicetemplates API

func (*ServiceTemplate) DeepCopy

func (in *ServiceTemplate) DeepCopy() *ServiceTemplate

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

func (*ServiceTemplate) DeepCopyInto

func (in *ServiceTemplate) DeepCopyInto(out *ServiceTemplate)

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

func (*ServiceTemplate) DeepCopyObject

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

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

func (*ServiceTemplate) FillStatusWithProviders

func (t *ServiceTemplate) FillStatusWithProviders(annotations map[string]string) error

FillStatusWithProviders sets the status of the template with providers either from the spec or from the given annotations.

func (*ServiceTemplate) GetCommonStatus

func (t *ServiceTemplate) GetCommonStatus() *TemplateStatusCommon

GetCommonStatus returns common status of the Template.

func (*ServiceTemplate) GetHelmSpec

func (t *ServiceTemplate) GetHelmSpec() *HelmSpec

GetHelmSpec returns .spec.helm of the Template.

func (*ServiceTemplate) HelmChartRef

HelmChartRef returns the ChartRef of the ServiceTemplate if defined, otherwise returns nil.

func (*ServiceTemplate) HelmChartSpec

func (t *ServiceTemplate) HelmChartSpec() *sourcev1.HelmChartSpec

HelmChartSpec returns the ChartSpec of the ServiceTemplate if defined, otherwise returns nil.

func (*ServiceTemplate) LocalSourceObject

func (t *ServiceTemplate) LocalSourceObject() (client.Object, string)

LocalSourceObject returns the client.Object and kind of the defined local source. If the ServiceTemplate does not reference a local source, it returns nil.

func (*ServiceTemplate) LocalSourceRef

func (t *ServiceTemplate) LocalSourceRef() *LocalSourceRef

LocalSourceRef returns the LocalSourceRef of the ServiceTemplate if defined, otherwise returns nil.

func (*ServiceTemplate) RemoteSourceObject

func (t *ServiceTemplate) RemoteSourceObject() (client.Object, string)

RemoteSourceObject returns the client.Object and kind of the defined remote source. If the ServiceTemplate does not define a remote source, returns nil and empty string.

func (*ServiceTemplate) RemoteSourceSpec

func (t *ServiceTemplate) RemoteSourceSpec() *RemoteSourceSpec

RemoteSourceSpec returns the RemoteSourceSpec of the ServiceTemplate if defined, otherwise returns nil.

type ServiceTemplateChain

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

	Spec   TemplateChainSpec   `json:"spec,omitempty"`
	Status TemplateChainStatus `json:"status,omitempty"`
}

ServiceTemplateChain is the Schema for the servicetemplatechains API

func (*ServiceTemplateChain) DeepCopy

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

func (*ServiceTemplateChain) DeepCopyInto

func (in *ServiceTemplateChain) DeepCopyInto(out *ServiceTemplateChain)

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

func (*ServiceTemplateChain) DeepCopyObject

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

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

func (*ServiceTemplateChain) GetSpec

func (*ServiceTemplateChain) GetStatus

func (t *ServiceTemplateChain) GetStatus() *TemplateChainStatus

func (*ServiceTemplateChain) Kind

func (*ServiceTemplateChain) Kind() string

func (*ServiceTemplateChain) TemplateKind

func (*ServiceTemplateChain) TemplateKind() string

type ServiceTemplateChainList

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

ServiceTemplateChainList contains a list of ServiceTemplateChain

func (*ServiceTemplateChainList) DeepCopy

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

func (*ServiceTemplateChainList) DeepCopyInto

func (in *ServiceTemplateChainList) DeepCopyInto(out *ServiceTemplateChainList)

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

func (*ServiceTemplateChainList) DeepCopyObject

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

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

type ServiceTemplateList

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

ServiceTemplateList contains a list of ServiceTemplate

func (*ServiceTemplateList) DeepCopy

func (in *ServiceTemplateList) DeepCopy() *ServiceTemplateList

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

func (*ServiceTemplateList) DeepCopyInto

func (in *ServiceTemplateList) DeepCopyInto(out *ServiceTemplateList)

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

func (*ServiceTemplateList) DeepCopyObject

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

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

type ServiceTemplateSpec

type ServiceTemplateSpec struct {
	// HelmOptions are the global options to use when installing or updating the helm chart.
	HelmOptions *ServiceHelmOptions `json:"helmOptions,omitempty"`

	// Helm contains the Helm chart information for the template.
	Helm *HelmSpec `json:"helm,omitempty"`

	// Kustomize contains the Kustomize configuration for the template.
	Kustomize *SourceSpec `json:"kustomize,omitempty"`

	// Resources contains the resource configuration for the template.
	Resources *SourceSpec `json:"resources,omitempty"`

	// Version is the semantic version of the application backed by template.
	Version string `json:"version,omitempty"`

	// Constraint describing compatible K8S versions of the cluster set in the SemVer format.
	KubernetesConstraint string `json:"k8sConstraint,omitempty"`
}

ServiceTemplateSpec defines the desired state of ServiceTemplate

func (*ServiceTemplateSpec) DeepCopy

func (in *ServiceTemplateSpec) DeepCopy() *ServiceTemplateSpec

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

func (*ServiceTemplateSpec) DeepCopyInto

func (in *ServiceTemplateSpec) DeepCopyInto(out *ServiceTemplateSpec)

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

type ServiceTemplateStatus

type ServiceTemplateStatus struct {
	// Constraint describing compatible K8S versions of the cluster set in the SemVer format.
	KubernetesConstraint string `json:"k8sConstraint,omitempty"`

	// SourceStatus reflects the status of the source.
	SourceStatus *SourceStatus `json:"sourceStatus,omitempty"`

	TemplateStatusCommon `json:",inline"`
}

ServiceTemplateStatus defines the observed state of ServiceTemplate

func (*ServiceTemplateStatus) DeepCopy

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

func (*ServiceTemplateStatus) DeepCopyInto

func (in *ServiceTemplateStatus) DeepCopyInto(out *ServiceTemplateStatus)

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

type ServiceType added in v1.3.0

type ServiceType string

type ServiceUpgradePaths

type ServiceUpgradePaths struct {
	// Name is the name of the service.
	Name string `json:"name"`
	// Namespace is the namespace of the service.
	Namespace string `json:"namespace"`
	// Template is the name of the current service template.
	Template string `json:"template"`
	// AvailableUpgrades contains details for the state of available upgrades.
	AvailableUpgrades []UpgradePath `json:"availableUpgrades,omitempty"`
}

ServiceUpgradePaths contains details for the state of service upgrade paths.

func (*ServiceUpgradePaths) DeepCopy

func (in *ServiceUpgradePaths) DeepCopy() *ServiceUpgradePaths

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

func (*ServiceUpgradePaths) DeepCopyInto

func (in *ServiceUpgradePaths) DeepCopyInto(out *ServiceUpgradePaths)

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

type ServiceWithValues added in v1.3.0

type ServiceWithValues struct {
	// HelmOptions are the options to be passed to the provider for helm installation or updates
	HelmOptions *ServiceHelmOptions `json:"helmOptions,omitempty"`

	// Version is the version of the service.
	Version *string `json:"version,omitempty"`

	// HelmChartAction specifies action on an helm chart
	HelmAction *string `json:"helmAction,omitempty"`

	// Name is the name of the service. If the ServiceTemplate is backed by Helm chart,
	// then the name is the name of the Helm release.
	Name string `json:"name"`

	// Namespace is the namespace where the service is deployed. If the ServiceTemplate
	// is backed by Helm chart, then the namespace is the namespace where the Helm release is deployed.
	Namespace string `json:"namespace"`

	// Template is the name of the ServiceTemplate to use to deploy the service.
	Template string `json:"template"`

	// Values is the values to pass to the ServiceTemplate.
	Values string `json:"values,omitempty"`

	// ValuesFrom is the list of sources of the values to pass to the ServiceTemplate.
	ValuesFrom []ValuesFrom `json:"valuesFrom,omitempty"`
}

func (*ServiceWithValues) DeepCopy added in v1.3.0

func (in *ServiceWithValues) DeepCopy() *ServiceWithValues

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

func (*ServiceWithValues) DeepCopyInto added in v1.3.0

func (in *ServiceWithValues) DeepCopyInto(out *ServiceWithValues)

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

type SourceSpec

type SourceSpec struct {
	// LocalSourceRef is the local source of the kustomize manifest.
	LocalSourceRef *LocalSourceRef `json:"localSourceRef,omitempty"`

	// RemoteSourceSpec is the remote source of the kustomize manifest.
	RemoteSourceSpec *RemoteSourceSpec `json:"remoteSourceSpec,omitempty"`

	// DeploymentType is the type of the deployment. This field is ignored,
	// when ResourceSpec is used as part of Helm chart configuration.
	DeploymentType string `json:"deploymentType"`

	// Path to the directory containing the resource manifest.
	Path string `json:"path,omitempty"`
}

SourceSpec defines the desired state of the source.

func (*SourceSpec) DeepCopy

func (in *SourceSpec) DeepCopy() *SourceSpec

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

func (*SourceSpec) DeepCopyInto

func (in *SourceSpec) DeepCopyInto(out *SourceSpec)

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

type SourceStatus

type SourceStatus struct {
	// Kind is the kind of the remote source.
	Kind string `json:"kind"`

	// Name is the name of the remote source.
	Name string `json:"name"`

	// Namespace is the namespace of the remote source.
	Namespace string `json:"namespace"`

	// Artifact is the artifact that was generated from the template source.
	Artifact *fluxmeta.Artifact `json:"artifact,omitempty"`

	// Conditions reflects the conditions of the remote source object.
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// ObservedGeneration is the latest source generation observed by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

SourceStatus reflects the status of the source.

func (*SourceStatus) DeepCopy

func (in *SourceStatus) DeepCopy() *SourceStatus

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

func (*SourceStatus) DeepCopyInto

func (in *SourceStatus) DeepCopyInto(out *SourceStatus)

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

type StateManagementProvider added in v1.1.0

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

	Spec   StateManagementProviderSpec   `json:"spec,omitempty"`
	Status StateManagementProviderStatus `json:"status,omitempty"`
}

StateManagementProvider is the Schema for the statemanagementproviders API

func (*StateManagementProvider) DeepCopy added in v1.1.0

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

func (*StateManagementProvider) DeepCopyInto added in v1.1.0

func (in *StateManagementProvider) DeepCopyInto(out *StateManagementProvider)

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

func (*StateManagementProvider) DeepCopyObject added in v1.1.0

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

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

type StateManagementProviderConfig added in v1.3.0

type StateManagementProviderConfig struct {
	// Config is the provider-specific configuration applied to the produced objects.
	Config *apiextv1.JSON `json:"config,omitempty"`

	// Name is the name of the [StateManagementProvider] object.
	Name string `json:"name,omitempty"`

	// SelfManagement flag defines whether resources must be deployed to the management cluster itself.
	// This field is ignored if set for ClusterDeployment.
	SelfManagement bool `json:"selfManagement,omitempty"`
}

StateManagementProviderConfig contains all the spec related to the state management provider.

func (*StateManagementProviderConfig) DeepCopy added in v1.3.0

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

func (*StateManagementProviderConfig) DeepCopyInto added in v1.3.0

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

type StateManagementProviderList added in v1.1.0

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

StateManagementProviderList contains a list of StateManagementProvider

func (*StateManagementProviderList) DeepCopy added in v1.1.0

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

func (*StateManagementProviderList) DeepCopyInto added in v1.1.0

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

func (*StateManagementProviderList) DeepCopyObject added in v1.1.0

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

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

type StateManagementProviderSpec added in v1.1.0

type StateManagementProviderSpec struct {
	// Selector is label selector to be used to filter the [ServiceSet] objects to be reconciled.
	Selector *metav1.LabelSelector `json:"selector"`

	// Adapter is an operator with translates the k0rdent API objects into provider-specific API objects.
	// It is represented as a reference to operator object
	Adapter ResourceReference `json:"adapter"`

	// Provisioner is a set of resources required for the provider to operate. These resources
	// reconcile provider-specific API objects. It is represented as a list of references to
	// provider's objects
	Provisioner []ResourceReference `json:"provisioner"`

	// ProvisionerCRDs is a set of references to provider-specific CustomResourceDefinition objects,
	// which are required for the provider to operate.
	ProvisionerCRDs []ProvisionerCRD `json:"provisionerCRDs"`

	// Suspend suspends the StateManagementProvider. Suspending a StateManagementProvider
	// will prevent the adapter from reconciling any resources.
	Suspend bool `json:"suspend"`
}

StateManagementProviderSpec defines the desired state of StateManagementProvider

func (*StateManagementProviderSpec) DeepCopy added in v1.1.0

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

func (*StateManagementProviderSpec) DeepCopyInto added in v1.1.0

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

type StateManagementProviderStatus added in v1.1.0

type StateManagementProviderStatus struct {

	// Conditions is a list of conditions for the state management provider
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Ready is true if the state management provider is valid
	Ready bool `json:"ready"`
}

StateManagementProviderStatus defines the observed state of StateManagementProvider

func (*StateManagementProviderStatus) DeepCopy added in v1.1.0

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

func (*StateManagementProviderStatus) DeepCopyInto added in v1.1.0

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

type SupportedTemplate

type SupportedTemplate struct {
	// Name is the name of the Template.
	Name string `json:"name"`
	// AvailableUpgrades is the list of available upgrades for the specified Template.
	AvailableUpgrades []AvailableUpgrade `json:"availableUpgrades,omitempty"`
}

SupportedTemplate is the supported Template definition and all available upgrade sequences for it

func (*SupportedTemplate) DeepCopy

func (in *SupportedTemplate) DeepCopy() *SupportedTemplate

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

func (*SupportedTemplate) DeepCopyInto

func (in *SupportedTemplate) DeepCopyInto(out *SupportedTemplate)

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

type TargetNamespaces

type TargetNamespaces struct {
	// StringSelector is a label query to select namespaces.
	// Mutually exclusive with Selector and List.
	StringSelector string `json:"stringSelector,omitempty"`
	// Selector is a structured label query to select namespaces.
	// Mutually exclusive with StringSelector and List.
	Selector *metav1.LabelSelector `json:"selector,omitempty"`
	// List is the list of namespaces to select.
	// Mutually exclusive with StringSelector and Selector.
	List []string `json:"list,omitempty"`
}

TargetNamespaces defines the list of namespaces or the label selector to select namespaces

func (*TargetNamespaces) DeepCopy

func (in *TargetNamespaces) DeepCopy() *TargetNamespaces

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

func (*TargetNamespaces) DeepCopyInto

func (in *TargetNamespaces) DeepCopyInto(out *TargetNamespaces)

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

type TemplateChainSpec

type TemplateChainSpec struct {

	// SupportedTemplates is the list of supported Templates definitions and all available upgrade sequences for it.
	SupportedTemplates []SupportedTemplate `json:"supportedTemplates,omitempty"`
}

TemplateChainSpec defines the desired state of *TemplateChain

func (*TemplateChainSpec) DeepCopy

func (in *TemplateChainSpec) DeepCopy() *TemplateChainSpec

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

func (*TemplateChainSpec) DeepCopyInto

func (in *TemplateChainSpec) DeepCopyInto(out *TemplateChainSpec)

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

func (*TemplateChainSpec) IsValid

func (s *TemplateChainSpec) IsValid() (warnings []string, ok bool)

IsValid checks if the TemplateChainSpec is valid, otherwise provides warning messages.

func (*TemplateChainSpec) UpgradePaths

func (s *TemplateChainSpec) UpgradePaths(templateName string) ([]UpgradePath, error)

UpgradePaths returns shortest upgrade paths for the given template.

type TemplateChainStatus

type TemplateChainStatus struct {
	// ValidationError provides information regarding issues encountered during templatechain validation.
	ValidationError string `json:"validationError,omitempty"`
	// Valid indicates whether the chain is valid and can be considered when calculating available
	// upgrade paths.
	Valid bool `json:"valid,omitempty"`
}

TemplateChainStatus defines the observed state of *TemplateChain

func (*TemplateChainStatus) DeepCopy

func (in *TemplateChainStatus) DeepCopy() *TemplateChainStatus

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

func (*TemplateChainStatus) DeepCopyInto

func (in *TemplateChainStatus) DeepCopyInto(out *TemplateChainStatus)

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

type TemplateStatusCommon

type TemplateStatusCommon struct {
	// Config demonstrates available parameters for template customization,
	// that can be used when creating ClusterDeployment objects.
	Config *apiextv1.JSON `json:"config,omitempty"`
	// ChartRef is a reference to a source controller resource containing the
	// Helm chart representing the template.
	ChartRef *helmcontrollerv2.CrossNamespaceSourceReference `json:"chartRef,omitempty"`
	// ChartVersion represents the version of the Helm Chart associated with this template.
	ChartVersion string `json:"chartVersion,omitempty"`
	// Description contains information about the template.
	Description string `json:"description,omitempty"`
	// SchemaConfigMapName specifies the name of the ConfigMap that contains the JSON Schema definition for Helm Chart validation.
	//
	// The ConfigMap's namespace is either in the system namespace for [ProviderTemplate]
	// or is inherited from either a [ClusterTemplate] or a [ServiceTemplate].
	SchemaConfigMapName string `json:"schemaConfigMapName,omitempty"`

	TemplateValidationStatus `json:",inline"`

	// ObservedGeneration is the last observed generation.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

TemplateStatusCommon defines the observed state of Template common for all Template types

func (*TemplateStatusCommon) DeepCopy

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

func (*TemplateStatusCommon) DeepCopyInto

func (in *TemplateStatusCommon) DeepCopyInto(out *TemplateStatusCommon)

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

type TemplateValidationStatus

type TemplateValidationStatus struct {
	// ValidationError provides information regarding issues encountered during template validation.
	ValidationError string `json:"validationError,omitempty"`
	// Valid indicates whether the template passed validation or not.
	Valid bool `json:"valid"`
}

func (*TemplateValidationStatus) DeepCopy

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

func (*TemplateValidationStatus) DeepCopyInto

func (in *TemplateValidationStatus) DeepCopyInto(out *TemplateValidationStatus)

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

type UpgradePath

type UpgradePath struct {
	// Deprecated: use Versions to define versions that service can be upgraded to.
	UpgradePaths []string `json:"upgradePaths,omitempty"`

	// Versions contains the list of versions that service can be upgraded to.
	Versions []AvailableUpgrade `json:"versions,omitempty"`
}

UpgradePath contains details for the state of service upgrade paths.

func (*UpgradePath) DeepCopy

func (in *UpgradePath) DeepCopy() *UpgradePath

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

func (*UpgradePath) DeepCopyInto

func (in *UpgradePath) DeepCopyInto(out *UpgradePath)

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

type ValuesFrom added in v1.3.0

type ValuesFrom struct {

	// Kind is the kind of the source.
	Kind string `json:"kind"`

	// Name is the name of the source.
	Name string `json:"name"`
}

ValuesFrom is the source of the values to pass to the ServiceTemplate. The source can be a ConfigMap or a Secret located in the same namespace as the ServiceSet.

func (*ValuesFrom) DeepCopy added in v1.3.0

func (in *ValuesFrom) DeepCopy() *ValuesFrom

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

func (*ValuesFrom) DeepCopyInto added in v1.3.0

func (in *ValuesFrom) DeepCopyInto(out *ValuesFrom)

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