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 ¶
- Constants
- Variables
- func ExtractAccessManagementTargetNamespaceLists(o client.Object) []string
- func ExtractAccessManagementTargetsAllNamespaces(o client.Object) []string
- func ExtractAccessManagementUsesSelector(o client.Object) []string
- func ExtractClusterAuditPolicyNameFromClusterDeployment(rawObj client.Object) []string
- func ExtractClusterAuthenticationNameFromClusterDeployment(rawObj client.Object) []string
- func ExtractCredentialNameFromClusterDeployment(rawObj client.Object) []string
- func ExtractCredentialRegion(o client.Object) []string
- func ExtractProvidersFromClusterTemplate(o client.Object) []string
- func ExtractRBACPolicyNameFromClusterDeployment(rawObj client.Object) []string
- func ExtractScheduledOrIncompleteBackups(o client.Object) []string
- func ExtractServiceSetCluster(o client.Object) []string
- func ExtractServiceSetMultiClusterService(o client.Object) []string
- func ExtractServiceSetProvider(o client.Object) []string
- func ExtractServiceTemplateChainNameFromClusterDeployment(rawObj client.Object) []string
- func ExtractServiceTemplateChainNamesFromMultiClusterService(rawObj client.Object) []string
- func ExtractServiceTemplateNamesFromClusterDeployment(rawObj client.Object) []string
- func ExtractServiceTemplateNamesFromMultiClusterService(rawObj client.Object) []string
- func ExtractTemplateNameFromClusterDeployment(rawObj client.Object) []string
- func SetupIndexers(ctx context.Context, mgr ctrl.Manager) error
- type AccessManagement
- type AccessManagementList
- type AccessManagementSpec
- type AccessManagementStatus
- type AccessRule
- type AddressSpaceSpec
- type AuthenticationConfiguration
- type AvailableUpgrade
- type ClusterAuditPolicy
- type ClusterAuditPolicyList
- type ClusterAuditPolicySpec
- type ClusterAuthentication
- type ClusterAuthenticationList
- type ClusterAuthenticationSpec
- func (in *ClusterAuthenticationSpec) DeepCopy() *ClusterAuthenticationSpec
- func (in *ClusterAuthenticationSpec) DeepCopyInto(out *ClusterAuthenticationSpec)
- func (s *ClusterAuthenticationSpec) GetAuthConfig() *apiserverv1.AuthenticationConfiguration
- func (s *ClusterAuthenticationSpec) HasAuthenticationConfiguration() bool
- func (s *ClusterAuthenticationSpec) HasCASecret() bool
- type ClusterDataSource
- type ClusterDataSourceList
- type ClusterDataSourceSpec
- type ClusterDataSourceStatus
- type ClusterDeployment
- func (in *ClusterDeployment) AddHelmValues(fn func(map[string]any) error) error
- func (in *ClusterDeployment) DeepCopy() *ClusterDeployment
- func (in *ClusterDeployment) DeepCopyInto(out *ClusterDeployment)
- func (in *ClusterDeployment) DeepCopyObject() runtime.Object
- func (in *ClusterDeployment) GetConditions() *[]metav1.Condition
- func (in *ClusterDeployment) HelmValues() (map[string]any, error)
- func (in *ClusterDeployment) SetHelmValues(values map[string]any) error
- type ClusterDeploymentList
- type ClusterDeploymentRef
- type ClusterDeploymentSpec
- type ClusterDeploymentStatus
- type ClusterIPAM
- type ClusterIPAMClaim
- type ClusterIPAMClaimList
- type ClusterIPAMClaimSpec
- type ClusterIPAMClaimStatus
- type ClusterIPAMClaimType
- type ClusterIPAMList
- type ClusterIPAMPhase
- type ClusterIPAMProviderData
- type ClusterIPAMSpec
- type ClusterIPAMStatus
- type ClusterIdentity
- type ClusterIdentityReference
- type ClusterTemplate
- func (in *ClusterTemplate) DeepCopy() *ClusterTemplate
- func (in *ClusterTemplate) DeepCopyInto(out *ClusterTemplate)
- func (in *ClusterTemplate) DeepCopyObject() runtime.Object
- func (t *ClusterTemplate) FillStatusWithProviders(annotations map[string]string) error
- func (t *ClusterTemplate) GetCommonStatus() *TemplateStatusCommon
- func (t *ClusterTemplate) GetHelmSpec() *HelmSpec
- func (t *ClusterTemplate) GetSpecProviders() Providers
- type ClusterTemplateChain
- func (in *ClusterTemplateChain) DeepCopy() *ClusterTemplateChain
- func (in *ClusterTemplateChain) DeepCopyInto(out *ClusterTemplateChain)
- func (in *ClusterTemplateChain) DeepCopyObject() runtime.Object
- func (t *ClusterTemplateChain) GetSpec() *TemplateChainSpec
- func (t *ClusterTemplateChain) GetStatus() *TemplateChainStatus
- func (*ClusterTemplateChain) Kind() string
- func (*ClusterTemplateChain) TemplateKind() string
- type ClusterTemplateChainList
- type ClusterTemplateList
- type ClusterTemplateSpec
- type ClusterTemplateStatus
- type CompatibilityContracts
- type Component
- type ComponentStatus
- type ComponentsCommonSpec
- type ComponentsCommonStatus
- type Core
- type CoreProviderTemplate
- type Credential
- type CredentialList
- type CredentialSpec
- type CredentialStatus
- type DataSource
- type DataSourceAuth
- type DataSourceList
- type DataSourceSpec
- type DatabaseType
- type EmbeddedBucketSpec
- type EmbeddedGitRepositorySpec
- type EmbeddedOCIRepositorySpec
- type GroupVersionKind
- type HelmSpec
- type KCMComponentInfo
- type LocalSourceRef
- type Management
- func (in *Management) Components() ComponentsCommonSpec
- func (in *Management) DeepCopy() *Management
- func (in *Management) DeepCopyInto(out *Management)
- func (in *Management) DeepCopyObject() runtime.Object
- func (in *Management) GetComponentsStatus() *ComponentsCommonStatus
- func (in *Management) GetConditions() *[]metav1.Condition
- func (*Management) HelmReleasePrefix() string
- func (*Management) KCMComponentInfo(release *Release, kcmReleaseName string) KCMComponentInfo
- func (in *Management) Templates() []string
- type ManagementBackup
- func (in *ManagementBackup) DeepCopy() *ManagementBackup
- func (in *ManagementBackup) DeepCopyInto(out *ManagementBackup)
- func (in *ManagementBackup) DeepCopyObject() runtime.Object
- func (s *ManagementBackup) IsCompleted() bool
- func (s *ManagementBackup) IsSchedule() bool
- func (s *ManagementBackup) TimestampedBackupName(timestamp time.Time, region string) string
- type ManagementBackupList
- type ManagementBackupSingleStatus
- type ManagementBackupSpec
- type ManagementBackupStatus
- type ManagementCleanup
- type ManagementList
- type ManagementSpec
- type ManagementStatus
- type MatchingCluster
- type MultiClusterService
- type MultiClusterServiceList
- type MultiClusterServiceSpec
- type MultiClusterServiceStatus
- type NamedProviderTemplate
- type Policy
- type Provider
- type ProviderInterface
- type ProviderInterfaceList
- type ProviderInterfaceSpec
- type ProviderState
- type ProviderTemplate
- func (in *ProviderTemplate) DeepCopy() *ProviderTemplate
- func (in *ProviderTemplate) DeepCopyInto(out *ProviderTemplate)
- func (in *ProviderTemplate) DeepCopyObject() runtime.Object
- func (t *ProviderTemplate) FillStatusWithProviders(annotations map[string]string) error
- func (t *ProviderTemplate) GetCommonStatus() *TemplateStatusCommon
- func (t *ProviderTemplate) GetHelmSpec() *HelmSpec
- type ProviderTemplateList
- type ProviderTemplateSpec
- type ProviderTemplateStatus
- type Providers
- type ProvisionerCRD
- type RBACPolicy
- type RBACPolicyBinding
- type RBACPolicyGrantState
- type RBACPolicyList
- type RBACPolicySpec
- type RBACPolicySubject
- type Region
- func (in *Region) Components() ComponentsCommonSpec
- func (in *Region) DeepCopy() *Region
- func (in *Region) DeepCopyInto(out *Region)
- func (in *Region) DeepCopyObject() runtime.Object
- func (in *Region) GetComponentsStatus() *ComponentsCommonStatus
- func (in *Region) GetConditions() *[]metav1.Condition
- func (in *Region) HelmReleasePrefix() string
- func (*Region) KCMComponentInfo(release *Release, _ string) KCMComponentInfo
- type RegionList
- type RegionSpec
- type RegionStatus
- type Release
- func (in *Release) DeepCopy() *Release
- func (in *Release) DeepCopyInto(out *Release)
- func (in *Release) DeepCopyObject() runtime.Object
- func (in *Release) GetConditions() *[]metav1.Condition
- func (in *Release) ProviderTemplate(name string) string
- func (in *Release) Providers() []Provider
- func (in *Release) Templates() []string
- type ReleaseList
- type ReleaseSpec
- type ReleaseStatus
- type RemoteSourceSpec
- type ResourceKindStatus
- type ResourceReference
- type ResourceRule
- type ResourceSelector
- type SecretKeyReference
- type Service
- type ServiceDependsOn
- type ServiceHelmOptions
- type ServiceSet
- type ServiceSetList
- type ServiceSetOperation
- type ServiceSetSpec
- type ServiceSetStatus
- type ServiceSpec
- type ServiceState
- type ServiceStatus
- type ServiceTemplate
- func (in *ServiceTemplate) DeepCopy() *ServiceTemplate
- func (in *ServiceTemplate) DeepCopyInto(out *ServiceTemplate)
- func (in *ServiceTemplate) DeepCopyObject() runtime.Object
- func (t *ServiceTemplate) FillStatusWithProviders(annotations map[string]string) error
- func (t *ServiceTemplate) GetCommonStatus() *TemplateStatusCommon
- func (t *ServiceTemplate) GetHelmSpec() *HelmSpec
- func (t *ServiceTemplate) HelmChartRef() *helmcontrollerv2.CrossNamespaceSourceReference
- func (t *ServiceTemplate) HelmChartSpec() *sourcev1.HelmChartSpec
- func (t *ServiceTemplate) LocalSourceObject() (client.Object, string)
- func (t *ServiceTemplate) LocalSourceRef() *LocalSourceRef
- func (t *ServiceTemplate) RemoteSourceObject() (client.Object, string)
- func (t *ServiceTemplate) RemoteSourceSpec() *RemoteSourceSpec
- type ServiceTemplateChain
- func (in *ServiceTemplateChain) DeepCopy() *ServiceTemplateChain
- func (in *ServiceTemplateChain) DeepCopyInto(out *ServiceTemplateChain)
- func (in *ServiceTemplateChain) DeepCopyObject() runtime.Object
- func (t *ServiceTemplateChain) GetSpec() *TemplateChainSpec
- func (t *ServiceTemplateChain) GetStatus() *TemplateChainStatus
- func (*ServiceTemplateChain) Kind() string
- func (*ServiceTemplateChain) TemplateKind() string
- type ServiceTemplateChainList
- type ServiceTemplateList
- type ServiceTemplateSpec
- type ServiceTemplateStatus
- type ServiceType
- type ServiceUpgradePaths
- type ServiceWithValues
- type SourceSpec
- type SourceStatus
- type StateManagementProvider
- type StateManagementProviderConfig
- type StateManagementProviderList
- type StateManagementProviderSpec
- type StateManagementProviderStatus
- type SupportedTemplate
- type TargetNamespaces
- type TemplateChainSpec
- type TemplateChainStatus
- type TemplateStatusCommon
- type TemplateValidationStatus
- type UpgradePath
- type ValuesFrom
Examples ¶
Constants ¶
const ( AccessManagementKind = "AccessManagement" AccessManagementName = "kcm" )
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" )
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" // RBACPolicyReadyCondition indicates whether the referenced [RBACPolicy] object exists // and ready. RBACPolicyReadyCondition = "RBACPolicyReady" // ClusterAuditPolicyReadyCondition indicates whether the referenced [ClusterAuditPolicy] object exists // and ready. ClusterAuditPolicyReadyCondition = "ClusterAuditPolicyReady" // 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" )
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" // CAPIClusterMissingReason indicates the underlying CAPI Cluster object is unexpectedly // absent while the [ClusterDeployment] is still alive (e.g., it was deleted out-of-band). CAPIClusterMissingReason = "CAPIClusterMissing" // RBACPolicyPartiallyAppliedReason indicates some, or possibly all, of the referenced // [RBACPolicy] bindings reached the child cluster while the sync as a whole did not succeed. // The sync deliberately continues past a failing binding, so this is the common shape of an // RBACPolicy failure and is worth telling apart from one that granted nothing at all. // Whether anything is still live there is recorded by status.rbacPolicyGranted, not here. RBACPolicyPartiallyAppliedReason = "RBACPolicyPartiallyApplied" // RBACPolicyNotFoundReason indicates spec.rbacPolicy names an [RBACPolicy] that does not exist. // Shared by the "never granted anything" and the "granted, now revoked" cases so that the // condition settles instead of being rewritten on the reconcile following a revoke. RBACPolicyNotFoundReason = "RBACPolicyNotFound" )
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" )
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" )
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" )
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" )
const ( // Provider K0smotron ProviderK0smotronName = "k0smotron" // Provider Sveltos ProviderSveltosName = "projectsveltos" )
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" )
const ( // AccessManagementTargetNamespaceListIndexKey indexes explicit namespace list targets from [AccessManagement] access rules. AccessManagementTargetNamespaceListIndexKey = ".spec.accessRules[].targetNamespaces.list" // AccessManagementUsesSelectorIndexKey indexes [AccessManagement] objects that use non-empty selectors in access rules. AccessManagementUsesSelectorIndexKey = "k0rdent.access-management.selector" // AccessManagementTargetsAllNamespacesIndexKey indexes [AccessManagement] objects with rules targeting all namespaces. AccessManagementTargetsAllNamespacesIndexKey = "k0rdent.access-management.all-namespaces" )
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" )
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" )
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" )
const ( // MultiClusterServiceFinalizer is finalizer applied to MultiClusterService objects. MultiClusterServiceFinalizer = "k0rdent.mirantis.com/multicluster-service" // MultiClusterServiceKind is the string representation of a MultiClusterServiceKind. MultiClusterServiceKind = "MultiClusterService" )
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" // MultiClusterServiceDependencyReadyCondition defines the condition of whether every // MultiClusterService this one depends on has finished deploying its services to // every cluster this MultiClusterService matches. MultiClusterServiceDependencyReadyCondition = "MultiClusterServiceDependencyReady" )
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" // MultiClusterServiceDependencyNotReadyReason signals that this MultiClusterService is waiting for // a MultiClusterService it depends on to deploy its services to one or more matching clusters. MultiClusterServiceDependencyNotReadyReason = "MultiClusterServiceDependencyNotReady" // MultiClusterServiceDependencyCheckFailedReason signals that an unexpected error prevented this // MultiClusterService from determining whether its MultiClusterService dependencies are ready // on one or more matching clusters. MultiClusterServiceDependencyCheckFailedReason = "MultiClusterServiceDependencyCheckFailed" )
Reasons are provided as utility, and not part of the declarative API.
const ( // ProviderInterfaceKind represents the kind for provider interfaces ProviderInterfaceKind = "ProviderInterface" // InfrastructureProviderPrefix is the prefix used for infrastructure provider names InfrastructureProviderPrefix = "infrastructure-" )
const ( // RBACPolicyKind is the Kind of the [RBACPolicy] object. RBACPolicyKind = "RBACPolicy" // ClusterRoleBindingNamePrefix is prepended to a binding's Name to produce the name of the // ClusterRoleBinding materialized for it in the child cluster (see RBACPolicyBinding.Name). ClusterRoleBindingNamePrefix = "k0rdent-" )
const ( RegionFinalizer = "k0rdent.mirantis.com/region" KCMRegionLabelKey = "k0rdent.mirantis.com/region" RegionPauseAnnotation = "k0rdent.mirantis.com/region-pause" )
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" )
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" // ServiceStateDeleted is the state when the Service has been deleted ServiceStateDeleted = "Deleted" // 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" )
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" )
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" )
const (
ClusterAuditPolicyKind = "ClusterAuditPolicy"
)
const (
ClusterAuthenticationKind = "ClusterAuthentication"
)
const ClusterDataSourceFinalizer = "k0rdent.mirantis.com/cluster-data-source"
const ClusterDeploymentAuditPolicyIndexKey = ".spec.auditPolicy"
ClusterDeploymentAuditPolicyIndexKey indexer field name to extract ClusterAuditPolicy name reference from a ClusterDeployment object.
const ClusterDeploymentAuthenticationIndexKey = ".spec.authentication"
ClusterDeploymentAuthenticationIndexKey indexer field name to extract ClusterAuthentication name reference from a ClusterDeployment object.
const ClusterDeploymentCredentialIndexKey = ".spec.credential"
ClusterDeploymentCredentialIndexKey indexer field name to extract Credential name reference from a ClusterDeployment object.
const ClusterDeploymentKind = "ClusterDeployment"
ClusterDeploymentKind is the string representation of a ClusterDeployment.
const ClusterDeploymentRBACPolicyIndexKey = ".spec.rbacPolicy"
ClusterDeploymentRBACPolicyIndexKey indexer field name to extract RBACPolicy name reference from a ClusterDeployment object.
const ClusterDeploymentServiceTemplateChainIndexKey = ".spec.serviceSpec.services[].templateChain"
ClusterDeploymentServiceTemplateChainIndexKey indexer field name to extract service template chain name from a ClusterDeployment object.
const ClusterDeploymentServiceTemplatesIndexKey = ".spec.services[].Template"
ClusterDeploymentServiceTemplatesIndexKey indexer field name to extract service templates names from a ClusterDeployment object.
const ClusterDeploymentTemplateIndexKey = ".spec.template"
ClusterDeploymentTemplateIndexKey indexer field name to extract ClusterTemplate name reference from a ClusterDeployment object.
const ClusterTemplateChainKind = "ClusterTemplateChain"
const ClusterTemplateProvidersIndexKey = "clusterTemplateProviders"
ClusterTemplateProvidersIndexKey indexer field name to extract provider names from a ClusterTemplate object.
const CredentialRegionIndexKey = ".spec.region"
CredentialRegionIndexKey indexer field name to extract region name from Credential object.
const DataSourceKind = "DataSource"
const (
DefaultRepoName = "kcm-templates"
)
const (
// KineTypePostresql represents the PostgreSQL backend for Kine database connections.
KineTypePostresql = "postgresql"
)
const ManagementBackupAutoUpgradeIndexKey = "k0rdent.management-backup-upgrades"
ManagementBackupAutoUpgradeIndexKey indexer field name to extract only ManagementBackup objects with schedule and auto-upgrade set.
const ManagementBackupIndexKey = "k0rdent.management-backup"
ManagementBackupIndexKey indexer field name to extract only ManagementBackup objects that either has schedule or has NOT been completed yet.
const MultiClusterServiceTemplateChainIndexKey = ".spec.serviceSpec.services[].templateChain"
MultiClusterServiceTemplateChainIndexKey indexer field name to extract template chain names from a MultiClusterService object.
const MultiClusterServiceTemplatesIndexKey = "serviceTemplates"
MultiClusterServiceTemplatesIndexKey indexer field name to extract service templates names from a MultiClusterService object.
const OwnerRefIndexKey = ".metadata.ownerReferences"
OwnerRefIndexKey indexer field name to extract ownerReference names from objects
const ProviderTemplateKind = "ProviderTemplate"
ProviderTemplateKind denotes the providertemplate resource Kind.
const (
// RegionConfigurationErrorReason declares that the [Region] object has configuration issues.
RegionConfigurationErrorReason = "ConfigurationError"
)
const (
RegionKind = "Region"
)
const (
// RegistryCredentialSecretReadyCondition indicates the registry credential secret has been created.
RegistryCredentialSecretReadyCondition = "RegistryCredentialSecretReady"
)
const ReleaseTemplatesIndexKey = "releaseTemplates"
ReleaseTemplatesIndexKey indexer field name to extract component template names from a Release object.
const ReleaseVersionIndexKey = ".spec.version"
ReleaseVersionIndexKey indexer field name to extract release version from a Release object.
const ServiceSetClusterIndexKey = "k0rdent.service-set.cluster"
ServiceSetClusterIndexKey indexer field name to extract cluster name from ServiceSet object.
const ServiceSetMultiClusterServiceIndexKey = "k0rdent.service-set.multi-cluster-service"
ServiceSetMultiClusterServiceIndexKey indexer field name to extract multi-cluster-service from ServiceSet object.
const ServiceSetProviderIndexKey = "k0rdent.service-set.provider"
ServiceSetProviderIndexKey indexer field name to extract provider name from ServiceSet object.
const ServiceTemplateChainKind = "ServiceTemplateChain"
const TemplateChainSupportedTemplatesIndexKey = ".spec.supportedTemplates[].Name"
TemplateChainSupportedTemplatesIndexKey indexer field name to extract supported template names from an according TemplateChain object.
Variables ¶
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 = &localSchemeBuilder{} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
var DefaultSourceRef = sourcev1.LocalHelmChartSourceReference{ Kind: sourcev1.HelmRepositoryKind, Name: DefaultRepoName, }
Functions ¶
func ExtractAccessManagementTargetNamespaceLists ¶ added in v1.10.0
ExtractAccessManagementTargetNamespaceLists returns explicit namespace list targets from AccessManagement access rules.
func ExtractAccessManagementTargetsAllNamespaces ¶ added in v1.10.0
ExtractAccessManagementTargetsAllNamespaces returns AccessManagement objects with at least one all-namespaces rule.
func ExtractAccessManagementUsesSelector ¶ added in v1.10.0
ExtractAccessManagementUsesSelector returns AccessManagement objects using non-empty selectors in access rules.
func ExtractClusterAuditPolicyNameFromClusterDeployment ¶ added in v1.10.0
ExtractClusterAuditPolicyNameFromClusterDeployment returns referenced ClusterAuditPolicy name declared in a ClusterDeployment object.
func ExtractClusterAuthenticationNameFromClusterDeployment ¶ added in v1.6.0
ExtractClusterAuthenticationNameFromClusterDeployment returns referenced ClusterAuthentication name declared in a ClusterDeployment object.
func ExtractCredentialNameFromClusterDeployment ¶ added in v1.5.0
ExtractCredentialNameFromClusterDeployment returns referenced Credential name declared in a ClusterDeployment object.
func ExtractCredentialRegion ¶ added in v1.5.0
ExtractCredentialRegion returns the region name from Credential object.
func ExtractProvidersFromClusterTemplate ¶
ExtractProvidersFromClusterTemplate returns provider names from a ClusterTemplate object.
func ExtractRBACPolicyNameFromClusterDeployment ¶ added in v1.12.0
ExtractRBACPolicyNameFromClusterDeployment returns referenced RBACPolicy name declared in a ClusterDeployment object.
func ExtractScheduledOrIncompleteBackups ¶
ExtractScheduledOrIncompleteBackups returns either scheduled or incomplete backups.
func ExtractServiceSetCluster ¶ added in v1.3.0
ExtractServiceSetCluster returns the cluster name from ServiceSet object.
func ExtractServiceSetMultiClusterService ¶ added in v1.3.0
ExtractServiceSetMultiClusterService returns the multi-cluster-service from ServiceSet object.
func ExtractServiceSetProvider ¶ added in v1.3.0
ExtractServiceSetProvider returns the provider name from ServiceSet object.
func ExtractServiceTemplateChainNameFromClusterDeployment ¶
ExtractServiceTemplateChainNameFromClusterDeployment returns a list of service template chain names declared in a ClusterDeployment object.
func ExtractServiceTemplateChainNamesFromMultiClusterService ¶
ExtractServiceTemplateChainNamesFromMultiClusterService returns a list of template chain names declared in a MultiClusterService object.
func ExtractServiceTemplateNamesFromClusterDeployment ¶
ExtractServiceTemplateNamesFromClusterDeployment returns a list of service templates names declared in a ClusterDeployment object.
func ExtractServiceTemplateNamesFromMultiClusterService ¶
ExtractServiceTemplateNamesFromMultiClusterService returns a list of service templates names declared in a MultiClusterService object.
func ExtractTemplateNameFromClusterDeployment ¶
ExtractTemplateNameFromClusterDeployment returns referenced ClusterTemplate name declared in a ClusterDeployment object.
Types ¶
type AccessManagement ¶
type AccessManagement struct {
metav1.TypeMeta `json:",inline"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec AccessManagementSpec `json:"spec,omitempty"`
// status describes the observed state
Status AccessManagementStatus `json:"status,omitzero,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.
func (*AccessManagement) MigrateAccessRules ¶ added in v1.12.0
func (am *AccessManagement) MigrateAccessRules() bool
MigrateAccessRules translates any deprecated one-field-per-Kind selectors still populated on each AccessRule into equivalent Resources entries, and defaults the APIGroup of every migrated entry (always one of the built-in Kinds) that omits it. It mutates am.Spec.AccessRules in place and reports whether it changed anything, so callers (the mutating webhook) can skip a write when the rules are already fully migrated and defaulted.
Migration is additive and idempotent: deprecated fields are cleared once translated, and re-running against an already-migrated AccessRule is a no-op. If both a deprecated field and a Resources entry for the same Kind are present (e.g. mid-migration hand-edited YAML), the translated entry is appended rather than merged with the existing one; duplicate names in the resolved set are harmless since the controller de-duplicates by namespaced name when distributing objects.
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 ¶
func (in *AccessManagementList) DeepCopy() *AccessManagementList
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 ¶
func (in *AccessManagementSpec) DeepCopy() *AccessManagementSpec
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 aggregate error message occurred during the reconciliation (if any).
// See Resources for a per-Kind breakdown.
Error string `json:"error,omitempty"`
// current reflects the applied access rules configuration.
Current []AccessRule `json:"current,omitempty"`
// resources reports the resolution outcome for each distinct Kind referenced across all
// AccessRules during the last reconciliation. A generic multi-Kind mechanism can fail
// per-Kind (bad selector matched nothing, target Kind rejected as cluster-scoped,
// RBAC/discovery not ready for a Kind) independently of the others, so those failures are
// reported individually here in addition to the aggregate Error above.
Resources []ResourceKindStatus `json:"resources,omitempty"`
// observedGeneration is the last observed generation.
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}
AccessManagementStatus defines the observed state of AccessManagement
func (*AccessManagementStatus) DeepCopy ¶
func (in *AccessManagementStatus) DeepCopy() *AccessManagementStatus
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.
// The KCM system namespace is always excluded, since it is the namespace objects are
// read from; naming it explicitly has no effect.
TargetNamespaces TargetNamespaces `json:"targetNamespaces,omitempty,omitzero"`
// resources is the generic list of resource rules. Each entry selects a set of objects of
// a given Kind (built-in or a custom/third-party CRD) to distribute into the namespaces
// matched by TargetNamespaces. Supersedes ClusterTemplateChains, ServiceTemplateChains,
// Credentials, ClusterAuthentications, DataSources and ClusterAuditPolicies below: any of
// those still populated are automatically translated into equivalent entries here.
Resources []ResourceRule `json:"resources,omitempty"`
// clusterTemplateChains is the list of [ClusterTemplateChain] names whose ClusterTemplates
// will be distributed to all namespaces specified in TargetNamespaces.
//
// Deprecated: use Resources with kind: ClusterTemplateChain instead. Populating this field
// is still accepted; it is automatically translated into an equivalent entry in Resources
// by a mutating webhook on write. Will be removed in a future API version.
ClusterTemplateChains []string `json:"clusterTemplateChains,omitempty"`
// serviceTemplateChains is the list of [ServiceTemplateChain] names whose ServiceTemplates
// will be distributed to all namespaces specified in TargetNamespaces.
//
// Deprecated: use Resources with kind: ServiceTemplateChain instead. Populating this field
// is still accepted; it is automatically translated into an equivalent entry in Resources
// by a mutating webhook on write. Will be removed in a future API version.
ServiceTemplateChains []string `json:"serviceTemplateChains,omitempty"`
// credentials is the list of [Credential] names that will be distributed to all the
// namespaces specified in TargetNamespaces.
//
// Deprecated: use Resources with kind: Credential instead. Populating this field is still
// accepted; it is automatically translated into an equivalent entry in Resources by a
// mutating webhook on write. Will be removed in a future API version.
Credentials []string `json:"credentials,omitempty"`
// clusterAuthentications is the list of [ClusterAuthentication] names that will be distributed to all the
// namespaces specified in TargetNamespaces.
//
// Deprecated: use Resources with kind: ClusterAuthentication instead. Populating this field
// is still accepted; it is automatically translated into an equivalent entry in Resources
// by a mutating webhook on write. Will be removed in a future API version.
ClusterAuthentications []string `json:"clusterAuthentications,omitempty"`
// dataSources is the list of [DataSource] names that will be distributed to all the
// namespaces specified in TargetNamespaces.
//
// Deprecated: use Resources with kind: DataSource instead. Populating this field is still
// accepted; it is automatically translated into an equivalent entry in Resources by a
// mutating webhook on write. Will be removed in a future API version.
DataSources []string `json:"dataSources,omitempty"`
// clusterAuditPolicies is the list of [ClusterAuditPolicy] names that will be distributed to all the
// namespaces specified in TargetNamespaces.
//
// Deprecated: use Resources with kind: ClusterAuditPolicy instead. Populating this field is
// still accepted; it is automatically translated into an equivalent entry in Resources by a
// mutating webhook on write. Will be removed in a future API version.
ClusterAuditPolicies []string `json:"clusterAuditPolicies,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.
func (*AccessRule) EffectiveResources ¶ added in v1.12.0
func (r *AccessRule) EffectiveResources() []ResourceRule
EffectiveResources returns the ResourceRules that should actually be resolved/distributed for this AccessRule. Resources wins outright when set, even if deprecated fields are also populated (mid-migration hand-edited YAML): the two are never merged. Only when Resources is completely empty are equivalent entries synthesized from the deprecated one-field-per-Kind selectors, so the controller keeps honoring old-styled AccessRules for backward compatibility when the mutating webhook that normally performs this migration on write is disabled or unavailable — without that fallback, previously-distributed objects for an old-styled rule would be silently orphaned (never refreshed, and never cleaned up either) once the admission path stops running the migration.
func (*AccessRule) HasDeprecatedFields ¶ added in v1.12.0
func (r *AccessRule) HasDeprecatedFields() bool
HasDeprecatedFields reports whether the AccessRule still populates any of the deprecated one-field-per-Kind selectors superseded by Resources.
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 {
// 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,omitempty"`
// anonymous configures anonymous authentication; when 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
func (*AuthenticationConfiguration) DeepCopy ¶ added in v1.6.0
func (in *AuthenticationConfiguration) DeepCopy() *AuthenticationConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationConfiguration.
func (*AuthenticationConfiguration) DeepCopyInto ¶ added in v1.6.0
func (in *AuthenticationConfiguration) DeepCopyInto(out *AuthenticationConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AvailableUpgrade ¶
type AvailableUpgrade struct {
// name is the name of the Template to which the upgrade is available.
Name string `json:"name,omitempty"`
// 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 ClusterAuditPolicy ¶ added in v1.10.0
type ClusterAuditPolicy struct {
metav1.TypeMeta `json:",inline"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ClusterAuditPolicySpec `json:"spec,omitzero"`
}
ClusterAuditPolicy is the Schema for the clusterauditpolicies API
func (*ClusterAuditPolicy) DeepCopy ¶ added in v1.10.0
func (in *ClusterAuditPolicy) DeepCopy() *ClusterAuditPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAuditPolicy.
func (*ClusterAuditPolicy) DeepCopyInto ¶ added in v1.10.0
func (in *ClusterAuditPolicy) DeepCopyInto(out *ClusterAuditPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterAuditPolicy) DeepCopyObject ¶ added in v1.10.0
func (in *ClusterAuditPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterAuditPolicy) ToAuditPolicy ¶ added in v1.10.0
func (p *ClusterAuditPolicy) ToAuditPolicy() (*audit.Policy, error)
ToAuditPolicy converts the auditv1.Policy object to audit.Policy for further validation
type ClusterAuditPolicyList ¶ added in v1.10.0
type ClusterAuditPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ClusterAuditPolicy `json:"items"`
}
ClusterAuditPolicyList contains a list of ClusterAuditPolicy
func (*ClusterAuditPolicyList) DeepCopy ¶ added in v1.10.0
func (in *ClusterAuditPolicyList) DeepCopy() *ClusterAuditPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAuditPolicyList.
func (*ClusterAuditPolicyList) DeepCopyInto ¶ added in v1.10.0
func (in *ClusterAuditPolicyList) DeepCopyInto(out *ClusterAuditPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterAuditPolicyList) DeepCopyObject ¶ added in v1.10.0
func (in *ClusterAuditPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterAuditPolicySpec ¶ added in v1.10.0
type ClusterAuditPolicySpec struct {
// policy contains the full content of a kubernetes [Policy] object used to configure auditing.
Policy Policy `json:"policy,omitzero"`
}
ClusterAuditPolicySpec defines the desired state of ClusterAuditPolicy
func (*ClusterAuditPolicySpec) DeepCopy ¶ added in v1.10.0
func (in *ClusterAuditPolicySpec) DeepCopy() *ClusterAuditPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAuditPolicySpec.
func (*ClusterAuditPolicySpec) DeepCopyInto ¶ added in v1.10.0
func (in *ClusterAuditPolicySpec) DeepCopyInto(out *ClusterAuditPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterAuditPolicySpec) GetPolicy ¶ added in v1.10.0
func (s *ClusterAuditPolicySpec) GetPolicy() *auditv1.Policy
GetPolicy builds the auditv1.Policy object from the ClusterAuditPolicySpec.
type ClusterAuthentication ¶ added in v1.6.0
type ClusterAuthentication struct {
metav1.TypeMeta `json:",inline"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ClusterAuthenticationSpec `json:"spec,omitempty,omitzero"`
}
ClusterAuthentication is the Schema for the cluster authentication configuration API
func (*ClusterAuthentication) DeepCopy ¶ added in v1.6.0
func (in *ClusterAuthentication) DeepCopy() *ClusterAuthentication
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
func (in *ClusterAuthenticationList) DeepCopy() *ClusterAuthenticationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAuthenticationList.
func (*ClusterAuthenticationList) DeepCopyInto ¶ added in v1.6.0
func (in *ClusterAuthenticationList) DeepCopyInto(out *ClusterAuthenticationList)
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,omitzero"`
// caSecret is the reference to the secret containing the CA certificates used to validate the connection
// to the issuers endpoints.
CASecret SecretKeyReference `json:"caSecret,omitzero"`
}
ClusterAuthenticationSpec defines the desired state of ClusterAuthentication
func (*ClusterAuthenticationSpec) DeepCopy ¶ added in v1.6.0
func (in *ClusterAuthenticationSpec) DeepCopy() *ClusterAuthenticationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAuthenticationSpec.
func (*ClusterAuthenticationSpec) DeepCopyInto ¶ added in v1.6.0
func (in *ClusterAuthenticationSpec) DeepCopyInto(out *ClusterAuthenticationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterAuthenticationSpec) GetAuthConfig ¶ added in v1.10.0
func (s *ClusterAuthenticationSpec) GetAuthConfig() *apiserverv1.AuthenticationConfiguration
func (*ClusterAuthenticationSpec) HasAuthenticationConfiguration ¶
func (s *ClusterAuthenticationSpec) HasAuthenticationConfiguration() bool
func (*ClusterAuthenticationSpec) HasCASecret ¶
func (s *ClusterAuthenticationSpec) HasCASecret() bool
type ClusterDataSource ¶ added in v1.6.0
type ClusterDataSource struct {
metav1.TypeMeta `json:",inline"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ClusterDataSourceSpec `json:"spec,omitzero"`
// status describes the observed state
Status ClusterDataSourceStatus `json:"status,omitempty,omitzero"`
}
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
func (in *ClusterDataSourceList) DeepCopy() *ClusterDataSourceList
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,omitempty"`
// dataSource references the [DataSource] object (in the same namespace) that provides database connection
// information and credentials.
DataSource string `json:"dataSource,omitempty"`
}
ClusterDataSourceSpec defines the desired state of ClusterDataSource
func (*ClusterDataSourceSpec) DeepCopy ¶ added in v1.6.0
func (in *ClusterDataSourceSpec) DeepCopy() *ClusterDataSourceSpec
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,omitempty"`
}
ClusterDataSourceStatus defines the observed state of ClusterDataSource
func (*ClusterDataSourceStatus) DeepCopy ¶ added in v1.6.0
func (in *ClusterDataSourceStatus) DeepCopy() *ClusterDataSourceStatus
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ClusterDeploymentSpec `json:"spec,omitzero"`
// status describes the observed state
Status ClusterDeploymentStatus `json:"status,omitempty,omitzero"`
}
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 ¶
func (in *ClusterDeploymentList) DeepCopy() *ClusterDeploymentList
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 identifies the ClusterDeployment namespace
Namespace string `json:"namespace,omitempty"`
// name identifies the ClusterDeployment
Name string `json:"name,omitempty"`
}
ClusterDeploymentRef is the reference to the existing ClusterDeployment object.
func (*ClusterDeploymentRef) DeepCopy ¶ added in v1.4.0
func (in *ClusterDeploymentRef) DeepCopy() *ClusterDeploymentRef
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"`
// 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,omitzero"`
// template is a reference to a Template object located in the same namespace.
Template string `json:"template,omitempty"`
// credential is the name of the related [Credential] object in the same namespace
Credential string `json:"credential,omitempty"`
// clusterAuth is the name of 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"`
// auditPolicy is the name reference to the related [ClusterAuditPolicy] object located in the same namespace
// containing audit policy configuration.
AuditPolicy string `json:"auditPolicy,omitempty"`
// rbacPolicy string is the name reference to the related [RBACPolicy] object located in the same namespace
// containing RBAC policy configuration.
RBACPolicy string `json:"rbacPolicy,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 ¶
func (in *ClusterDeploymentSpec) DeepCopy() *ClusterDeploymentSpec
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"`
// rbacPolicyGrant reports whether ClusterRoles and ClusterRoleBindings derived from the
// [RBACPolicy] named by spec.rbacPolicy may be live in this ClusterDeployment's child cluster.
// Empty means none are: either nothing was ever applied there, or everything that was has
// since been revoked. See [RBACPolicyGrantState].
RBACPolicyGrant RBACPolicyGrantState `json:"rbacPolicyGrant,omitempty"`
// k8sVersion is the 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 ¶
func (in *ClusterDeploymentStatus) DeepCopy() *ClusterDeploymentStatus
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ClusterIPAMSpec `json:"spec,omitempty,omitzero"`
// status describes the observed state
Status ClusterIPAMStatus `json:"status,omitempty,omitzero"`
}
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ClusterIPAMClaimSpec `json:"spec,omitempty,omitzero"`
// status describes the observed state
Status ClusterIPAMClaimStatus `json:"status,omitempty,omitzero"`
}
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 ¶
func (in *ClusterIPAMClaimList) DeepCopy() *ClusterIPAMClaimList
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,omitempty"`
// 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,omitzero"`
// clusterNetwork defines the allocation for requisitioning ip addresses for use by the k8s cluster itself
ClusterNetwork AddressSpaceSpec `json:"clusterNetwork,omitempty,omitzero"`
// externalNetwork defines the allocation for requisitioning ip addresses for use by services such as load balancers
ExternalNetwork AddressSpaceSpec `json:"externalNetwork,omitempty,omitzero"`
}
ClusterIPAMClaimSpec defines the desired state of ClusterIPAMClaim
func (*ClusterIPAMClaimSpec) DeepCopy ¶
func (in *ClusterIPAMClaimSpec) DeepCopy() *ClusterIPAMClaimSpec
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,omitempty"`
}
ClusterIPAMClaimStatus defines the observed state of ClusterIPAMClaim
func (*ClusterIPAMClaimStatus) DeepCopy ¶
func (in *ClusterIPAMClaimStatus) DeepCopy() *ClusterIPAMClaimStatus
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 {
// spec 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,omitzero"`
// ref 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 ¶
func (in *ClusterIPAMClaimType) DeepCopy() *ClusterIPAMClaimType
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 {
// config contains 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"`
}
ClusterIPAMProviderData is the data of IPAM Provider.
func (*ClusterIPAMProviderData) DeepCopy ¶
func (in *ClusterIPAMProviderData) DeepCopy() *ClusterIPAMProviderData
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 {
// provider identifies the provider that will consume this claim
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,omitempty"`
// 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
func (in *ClusterIdentityReference) DeepCopy() *ClusterIdentityReference
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ClusterTemplateSpec `json:"spec,omitempty,omitzero"`
// status describes the observed state
Status ClusterTemplateStatus `json:"status,omitempty,omitzero"`
}
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec TemplateChainSpec `json:"spec,omitempty"`
// status describes the observed state
Status TemplateChainStatus `json:"status,omitempty,omitzero"`
}
ClusterTemplateChain is the Schema for the clustertemplatechains API
func (*ClusterTemplateChain) DeepCopy ¶
func (in *ClusterTemplateChain) DeepCopy() *ClusterTemplateChain
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 (t *ClusterTemplateChain) GetSpec() *TemplateChainSpec
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 ¶
func (in *ClusterTemplateChainList) DeepCopy() *ClusterTemplateChainList
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 defines the Helm chart backing the template
Helm HelmSpec `json:"helm,omitzero"`
// providerContracts 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"`
// k8sVersion is the exact Kubernetes version in 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 {
// providerContracts 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"`
// k8sVersion is the exact Kubernetes version in SemVer format provided by this ClusterTemplate.
KubernetesVersion string `json:"k8sVersion,omitempty"`
// providers represent required CAPI providers.
Providers Providers `json:"providers,omitempty"`
// +optional
TemplateStatusCommon `json:",inline,omitzero"`
}
ClusterTemplateStatus defines the observed state of ClusterTemplate
func (*ClusterTemplateStatus) DeepCopy ¶
func (in *ClusterTemplateStatus) DeepCopy() *ClusterTemplateStatus
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 ¶
CompatibilityContracts 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 ¶
func (in CompatibilityContracts) DeepCopy() CompatibilityContracts
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Component.
func (*Component) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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
func (in *ComponentsCommonSpec) DeepCopy() *ComponentsCommonSpec
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 {
// capiContracts holds compatibility [contract versions] for each CAPI provider
// 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
func (in *ComponentsCommonStatus) DeepCopy() *ComponentsCommonStatus
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,omitzero"`
// capi represents the core Cluster API component and references the Cluster API template.
CAPI Component `json:"capi,omitempty,omitzero"`
}
Core represents a structure describing core Management components.
func (*Core) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Core.
func (*Core) DeepCopyInto ¶
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,omitempty"`
}
func (*CoreProviderTemplate) DeepCopy ¶
func (in *CoreProviderTemplate) DeepCopy() *CoreProviderTemplate
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec CredentialSpec `json:"spec,omitzero"`
// status describes the observed state
Status CredentialStatus `json:"status,omitempty,omitzero"`
}
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 {
// identityRef references the Credential identity
IdentityRef *corev1.ObjectReference `json:"identityRef,omitempty"`
// 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,omitempty"`
}
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec DataSourceSpec `json:"spec,omitzero"`
}
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,omitzero"`
// password is a reference to a secret key containing the password credential
// used for data source authentication.
Password SecretKeyReference `json:"password,omitzero"`
}
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,omitzero"`
// 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,omitzero"`
// type specifies the database type to connect to the data source.
Type DatabaseType `json:"type,omitempty"`
// 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,omitempty"`
}
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 ¶
func (in *EmbeddedGitRepositorySpec) DeepCopy() *EmbeddedGitRepositorySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedGitRepositorySpec.
func (*EmbeddedGitRepositorySpec) DeepCopyInto ¶
func (in *EmbeddedGitRepositorySpec) DeepCopyInto(out *EmbeddedGitRepositorySpec)
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 ¶
func (in *EmbeddedOCIRepositorySpec) DeepCopy() *EmbeddedOCIRepositorySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedOCIRepositorySpec.
func (*EmbeddedOCIRepositorySpec) DeepCopyInto ¶
func (in *EmbeddedOCIRepositorySpec) DeepCopyInto(out *EmbeddedOCIRepositorySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GroupVersionKind ¶
type GroupVersionKind struct {
// group identifies the API group. Empty means Core API group.
Group string `json:"group"`
// version identifies the API version
Version string `json:"version,omitempty"`
// kind identifies the API kind
Kind string `json:"kind,omitempty"`
}
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,omitzero"`
}
HelmSpec references a Helm chart representing the KCM template
func (*HelmSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HelmSpec.
func (*HelmSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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,omitempty"`
// name is the name of the local source.
Name string `json:"name,omitempty"`
// 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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ManagementSpec `json:"spec,omitempty,omitzero"`
// status describes the observed state
Status ManagementStatus `json:"status,omitempty,omitzero"`
}
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ManagementBackupSpec `json:"spec,omitempty"`
// status describes the observed state
Status ManagementBackupStatus `json:"status,omitempty,omitzero"`
}
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 ¶
func (in *ManagementBackupList) DeepCopy() *ManagementBackupList
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"`
// lastBackupTime is the creation time of the most recent [github.com/vmware-tanzu/velero/pkg/apis/velero/v1.Backup].
LastBackupTime *metav1.Time `json:"lastBackupTime,omitempty"`
// lastBackup is the most recently created [github.com/vmware-tanzu/velero/pkg/apis/velero/v1.Backup].
LastBackup *velerov1.BackupStatus `json:"lastBackup,omitempty"`
// lastBackupName is the name of the 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
func (in *ManagementBackupSingleStatus) DeepCopy() *ManagementBackupSingleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementBackupSingleStatus.
func (*ManagementBackupSingleStatus) DeepCopyInto ¶ added in v1.4.0
func (in *ManagementBackupSingleStatus) DeepCopyInto(out *ManagementBackupSingleStatus)
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 ¶
func (in *ManagementBackupSpec) DeepCopy() *ManagementBackupSpec
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"`
// regions contains 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 ¶
func (in *ManagementBackupStatus) DeepCopy() *ManagementBackupStatus
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 ManagementCleanup ¶ added in v1.11.0
type ManagementCleanup struct {
// k0rdentCRDs indicates whether k0rdent-owned CRDs should be removed when a Management is deleted.
// Note: this removes the Management CRD itself as part of the sweep.
K0rdentCRDs bool `json:"k0rdentCRDs,omitempty"`
// capiProviderCRDs indicates whether CRDs installed by the CAPI operator should be removed on
// Management deletion. Note: this removes all CAPI provider CRDs on the cluster,
// including any that were not installed by k0rdent.
CAPIProviderCRDs bool `json:"capiProviderCRDs,omitempty"`
}
ManagementCleanup controls which CRDs are removed when a Management object is deleted. CRD deletion is issued without waiting for it to complete (fire-and-forget).
func (*ManagementCleanup) DeepCopy ¶ added in v1.11.0
func (in *ManagementCleanup) DeepCopy() *ManagementCleanup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagementCleanup.
func (*ManagementCleanup) DeepCopyInto ¶ added in v1.11.0
func (in *ManagementCleanup) DeepCopyInto(out *ManagementCleanup)
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,omitempty"`
// ComponentsCommonSpec defines the desired state of management components.
ComponentsCommonSpec `json:",inline"`
// cleanup configures CRD removal behaviour when the Management object is deleted.
// CRD deletion is issued without waiting for it to complete (fire-and-forget).
Cleanup ManagementCleanup `json:"cleanup,omitempty,omitzero"`
}
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"`
// reason is a brief machine-readable explanation for why services are not yet
// Deployed on this cluster, e.g. MultiClusterServiceDependencyNotReady when this
// MultiClusterService is waiting for a MultiClusterService it depends on to finish
// deploying its services here.
Reason string `json:"reason,omitempty"`
// message is a human-readable explanation of Reason.
Message string `json:"message,omitempty"`
// regional indicates whether given cluster is regional.
Regional bool `json:"regional,omitempty"`
// deployed indicates whether all services were successfully deployed.
Deployed bool `json:"deployed,omitempty"`
}
MatchingCluster is a cluster matching the given selector.
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec MultiClusterServiceSpec `json:"spec,omitempty"`
// status describes the observed state
Status MultiClusterServiceStatus `json:"status,omitempty,omitzero"`
}
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 ¶
func (in *MultiClusterServiceList) DeepCopy() *MultiClusterServiceList
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,omitzero"`
// 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,omitzero"`
// keepServicesOnSelectorMismatch indicates whether ServiceSets owned by
// this MultiClusterService should be preserved on clusters whose labels
// no longer match ClusterSelector, including the case where
// ClusterSelector is cleared. When true, services already deployed on
// such clusters keep running, enabling per-cluster opt-in rollouts driven
// by selector changes.
KeepServicesOnSelectorMismatch bool `json:"keepServicesOnSelectorMismatch,omitempty"`
}
MultiClusterServiceSpec defines the desired state of MultiClusterService
func (*MultiClusterServiceSpec) DeepCopy ¶
func (in *MultiClusterServiceSpec) DeepCopy() *MultiClusterServiceSpec
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 ¶
func (in *MultiClusterServiceStatus) DeepCopy() *MultiClusterServiceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterServiceStatus.
func (*MultiClusterServiceStatus) DeepCopyInto ¶
func (in *MultiClusterServiceStatus) DeepCopyInto(out *MultiClusterServiceStatus)
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,omitempty"`
}
func (*NamedProviderTemplate) DeepCopy ¶
func (in *NamedProviderTemplate) DeepCopy() *NamedProviderTemplate
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 Policy ¶ added in v1.10.0
type Policy struct {
// rules specify the audit Level a request should be recorded at.
// A request may match multiple rules, in which case the FIRST matching rule is used.
// The default audit level is None, but can be overridden by a catch-all rule at the end of the list.
// PolicyRules are strictly ordered.
Rules []auditv1.PolicyRule `json:"rules,omitempty" protobuf:"bytes,2,rep,name=rules"`
// omitStages is a list of stages for which no events are created. Note that this can also
// be specified per rule in which case the union of both are omitted.
OmitStages []auditv1.Stage `json:"omitStages,omitempty" protobuf:"bytes,3,rep,name=omitStages"`
// omitManagedFields indicates whether to omit the managed fields of the request
// and response bodies from being written to the API audit log.
// This is used as a global default - a value of 'true' will omit the managed fileds,
// otherwise the managed fields will be included in the API audit log.
// Note that this can also be specified per rule in which case the value specified
// in a rule will override the global default.
OmitManagedFields bool `json:"omitManagedFields,omitempty" protobuf:"varint,4,opt,name=omitManagedFields"`
}
Policy defines the structure of the kubernetes Policy object used to configure auditing.
This type is derived from the upstream Kubernetes implementation of k8s.io/apiserver/pkg/apis/audit/v1.Policy
func (*Policy) DeepCopy ¶ added in v1.10.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Policy.
func (*Policy) DeepCopyInto ¶ added in v1.10.0
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,omitempty"`
}
func (*Provider) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Provider.
func (*Provider) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProviderInterface ¶
type ProviderInterface struct {
metav1.TypeMeta `json:",inline"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
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 ¶
func (in *ProviderInterfaceList) DeepCopy() *ProviderInterfaceList
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"`
// 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 ¶
func (in *ProviderInterfaceSpec) DeepCopy() *ProviderInterfaceSpec
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ProviderTemplateSpec `json:"spec,omitempty,omitzero"`
// status describes the observed state
Status ProviderTemplateStatus `json:"status,omitempty,omitzero"`
}
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 ¶
func (in *ProviderTemplateList) DeepCopy() *ProviderTemplateList
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 defines the Helm chart backing the template
Helm HelmSpec `json:"helm,omitempty,omitzero"`
// capiContracts contains the supported Cluster API contracts
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 ¶
func (in *ProviderTemplateSpec) DeepCopy() *ProviderTemplateSpec
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 contains the discovered Cluster API contracts
CAPIContracts CompatibilityContracts `json:"capiContracts,omitempty"`
// providers represent exposed CAPI providers.
Providers Providers `json:"providers,omitempty"`
// +optional
TemplateStatusCommon `json:",inline,omitzero"`
}
ProviderTemplateStatus defines the observed state of ProviderTemplate
func (*ProviderTemplateStatus) DeepCopy ¶
func (in *ProviderTemplateStatus) DeepCopy() *ProviderTemplateStatus
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
Providers holds different types of CAPI providers.
func (Providers) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Providers.
func (Providers) DeepCopyInto ¶
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,omitempty"`
// version is the API version of the resources
Version string `json:"version,omitempty"`
// resources is the list of resources under given APIVersion
Resources []string `json:"resources,omitempty"`
}
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 RBACPolicy ¶ added in v1.12.0
type RBACPolicy struct {
metav1.TypeMeta `json:",inline"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state of the RBACPolicy
Spec RBACPolicySpec `json:"spec,omitempty,omitzero"`
}
RBACPolicy is the Schema for the rbacpolicies API.
It is a role catalog: any number of ClusterDeployment objects in the same namespace opt in by setting spec.rbacPolicy to its name. For each entry in spec.bindings, the RBAC operator creates/updates a "k0rdent-<name>" ClusterRoleBinding in each referencing ClusterDeployment's child cluster, using the kubeconfig generated by Cluster API.
Scope: cluster-scoped grants only. A binding always produces a ClusterRoleBinding, and may create or update a ClusterRole when rules are supplied. There is currently no way to express a namespaced grant ("project X gets edit in namespace Y") — no Role, no RoleBinding, no binding a subject to a Role — and no ServiceAccount subjects. Bind a cluster-wide role instead, or manage namespaced RBAC through a service.
func (*RBACPolicy) DeepCopy ¶ added in v1.12.0
func (in *RBACPolicy) DeepCopy() *RBACPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RBACPolicy.
func (*RBACPolicy) DeepCopyInto ¶ added in v1.12.0
func (in *RBACPolicy) DeepCopyInto(out *RBACPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RBACPolicy) DeepCopyObject ¶ added in v1.12.0
func (in *RBACPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RBACPolicyBinding ¶ added in v1.12.0
type RBACPolicyBinding struct {
// name identifies this binding within the policy (for example "compute-admin"). It is used to
// name the generated ClusterRoleBinding ("k0rdent-<name>").
Name string `json:"name,omitempty"`
// clusterRole is the name of the Kubernetes ClusterRole that Name is bound to in the child
// cluster. It may be a built-in ClusterRole (e.g. "admin", "edit", "view") or a custom one,
// either already present in the child cluster or defined inline via Rules.
ClusterRole string `json:"clusterRole,omitempty"`
// rules optionally supplies the PolicyRules for the ClusterRole named by ClusterRole, for the case
// where that ClusterRole does not already exist in the child cluster (e.g. a custom role). When
// set, the operator creates/updates that ClusterRole (with these rules) alongside the
// ClusterRoleBinding. Leave unset to bind to a ClusterRole that is expected to already exist
// (e.g. a built-in role) — the operator never modifies a ClusterRole it did not create.
//
// Arbitrary PolicyRules are accepted, wildcards included, and are applied through Cluster API's
// admin kubeconfig, so the in-cluster escalate/bind protections do not apply: creating an
// RBACPolicy is by design as privileged as owning the child clusters it reaches.
Rules []rbacv1.PolicyRule `json:"rules,omitempty"`
// subjects is the ClusterRoleBinding subject list for this binding. See RBACPolicySubject.
Subjects []RBACPolicySubject `json:"subjects,omitempty"`
}
RBACPolicyBinding maps a single Kubernetes ClusterRole to the exact set of ClusterRoleBinding subjects that should be bound to it in the targeted child cluster.
func (*RBACPolicyBinding) DeepCopy ¶ added in v1.12.0
func (in *RBACPolicyBinding) DeepCopy() *RBACPolicyBinding
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RBACPolicyBinding.
func (*RBACPolicyBinding) DeepCopyInto ¶ added in v1.12.0
func (in *RBACPolicyBinding) DeepCopyInto(out *RBACPolicyBinding)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RBACPolicyGrantState ¶ added in v1.12.0
type RBACPolicyGrantState string
RBACPolicyGrantState reports what the RBAC operator may have left in a ClusterDeployment's child cluster. It is set before the first write there and cleared only once everything the operator created is gone, and it is the sole record of those objects once the RBACPolicy is deleted, which is exactly when they have to be revoked.
+kubebuilder:validation:Enum=Granted
const RBACPolicyGrantedState RBACPolicyGrantState = "Granted"
RBACPolicyGrantedState indicates ClusterRoles and ClusterRoleBindings this operator created may still be live in the child cluster, so a revoke has to prune them. An over-approximation: it is set before the bindings are applied, so it holds even for a sync that created nothing.
type RBACPolicyList ¶ added in v1.12.0
type RBACPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []RBACPolicy `json:"items"`
}
RBACPolicyList contains a list of RBACPolicy.
func (*RBACPolicyList) DeepCopy ¶ added in v1.12.0
func (in *RBACPolicyList) DeepCopy() *RBACPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RBACPolicyList.
func (*RBACPolicyList) DeepCopyInto ¶ added in v1.12.0
func (in *RBACPolicyList) DeepCopyInto(out *RBACPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RBACPolicyList) DeepCopyObject ¶ added in v1.12.0
func (in *RBACPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RBACPolicySpec ¶ added in v1.12.0
type RBACPolicySpec struct {
// bindings is the role catalog: each entry maps one ClusterRole to a set of subjects,
// materialized as a ClusterRoleBinding in the child cluster of each referencing ClusterDeployment.
Bindings []RBACPolicyBinding `json:"bindings,omitempty"`
}
RBACPolicySpec defines the role catalog: a set of ClusterRole -> subjects bindings that the RBAC operator reconciles into the child cluster of every ClusterDeployment that references this RBACPolicy via spec.rbacPolicy.
func (*RBACPolicySpec) DeepCopy ¶ added in v1.12.0
func (in *RBACPolicySpec) DeepCopy() *RBACPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RBACPolicySpec.
func (*RBACPolicySpec) DeepCopyInto ¶ added in v1.12.0
func (in *RBACPolicySpec) DeepCopyInto(out *RBACPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RBACPolicySubject ¶ added in v1.12.0
type RBACPolicySubject struct {
// kind is the Kubernetes RBAC subject kind: "User" or "Group". ServiceAccount subjects are
// deliberately not supported, see the RBACPolicy doc comment.
Kind string `json:"kind,omitempty"`
// name is the exact subject name (see the RBACPolicySubject doc comment).
Name string `json:"name,omitempty"`
}
RBACPolicySubject names one ClusterRoleBinding subject.
RBACPolicy makes no assumption about how (or whether) the child cluster's authentication is configured: Name is written verbatim by the author to match whatever that specific setup actually asserts (a ClusterAuthentication's JWT claim mapping, some other identity provider, or none at all) — for example "k0rdent:project:project-2:compute-admin".
func (*RBACPolicySubject) DeepCopy ¶ added in v1.12.0
func (in *RBACPolicySubject) DeepCopy() *RBACPolicySubject
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RBACPolicySubject.
func (*RBACPolicySubject) DeepCopyInto ¶ added in v1.12.0
func (in *RBACPolicySubject) DeepCopyInto(out *RBACPolicySubject)
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec RegionSpec `json:"spec,omitempty"`
// status describes the observed state
Status RegionStatus `json:"status,omitempty,omitzero"`
}
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
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Region.
func (*Region) DeepCopyInto ¶ added in v1.4.0
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
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
GetConditions returns Region conditions
func (*Region) HelmReleasePrefix ¶ added in v1.9.0
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,omitzero"`
// 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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ReleaseSpec `json:"spec,omitempty,omitzero"`
// status describes the observed state
Status ReleaseStatus `json:"status,omitempty,omitzero"`
}
Release is the Schema for the releases API
func (*Release) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Release.
func (*Release) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Release) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Release) GetConditions ¶ added in v1.1.0
func (*Release) ProviderTemplate ¶
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,omitempty"`
// kcm references the KCM template.
KCM CoreProviderTemplate `json:"kcm,omitzero"`
// regional references the KCM regional template.
Regional CoreProviderTemplate `json:"regional,omitzero"`
// capi references the Cluster API template.
CAPI CoreProviderTemplate `json:"capi,omitzero"`
// 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 ResourceKindStatus ¶ added in v1.12.0
type ResourceKindStatus struct {
// apiGroup of the Kind this status entry applies to.
APIGroup string `json:"apiGroup,omitempty"`
// kind this status entry applies to.
Kind string `json:"kind,omitempty"`
// error is the error message occurred while resolving/distributing objects of this Kind, if any.
// An empty Error means this Kind was processed successfully as of ObservedGeneration.
Error string `json:"error,omitempty"`
}
ResourceKindStatus reports the outcome of resolving/distributing objects of a single Kind referenced by one or more ResourceRules across the AccessManagement's AccessRules.
func (*ResourceKindStatus) DeepCopy ¶ added in v1.12.0
func (in *ResourceKindStatus) DeepCopy() *ResourceKindStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceKindStatus.
func (*ResourceKindStatus) DeepCopyInto ¶ added in v1.12.0
func (in *ResourceKindStatus) DeepCopyInto(out *ResourceKindStatus)
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,omitempty"`
// kind is the kind of the resource
Kind string `json:"kind,omitempty"`
// name is the name of the resource
Name string `json:"name,omitempty"`
// namespace is the namespace of the resource
Namespace string `json:"namespace,omitempty"`
// readinessRule is a CEL expression that evaluates to true when the resource is ready
ReadinessRule string `json:"readinessRule,omitempty"`
}
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 ResourceRule ¶ added in v1.12.0
type ResourceRule struct {
// selector selects objects in the system namespace by label.
// Mutually exclusive with Names and StringSelector.
Selector *metav1.LabelSelector `json:"selector,omitempty"`
// apiGroup of the referenced Kind, e.g. "k0rdent.mirantis.com" or a custom CRD's API group.
// Defaults to "k0rdent.mirantis.com" when omitted and Kind is one of the built-in Kinds
// (ClusterTemplateChain, ServiceTemplateChain, Credential, ClusterAuthentication, DataSource,
// ClusterAuditPolicy, RBACPolicy), covering them without requiring users to spell it out. For any other
// Kind, an omitted APIGroup means the core (empty) API group, the same convention used
// elsewhere in Kubernetes (e.g. RBAC PolicyRule.APIGroups).
APIGroup string `json:"apiGroup,omitempty"`
// kind of the referenced objects. Not restricted to an enum: any namespaced Kind the
// controller has permission to read/write may be referenced, including custom CRDs.
// Cluster-scoped Kinds are rejected, since AccessManagement only ever distributes
// namespaced objects.
Kind string `json:"kind,omitempty"`
// stringSelector is a label query in string form.
// Mutually exclusive with Names and Selector.
StringSelector string `json:"stringSelector,omitempty"`
// names is an explicit list of object names in the system namespace.
// Mutually exclusive with Selector and StringSelector.
Names []string `json:"names,omitempty"`
}
ResourceRule selects a set of objects of a given Kind to distribute into the namespaces matched by the enclosing AccessRule's TargetNamespaces. Same convention as TargetNamespaces: when none of Names, Selector or StringSelector is set, every object of Kind in the KCM system namespace is distributed. Matching objects are always read from the KCM system namespace.
func (*ResourceRule) DeepCopy ¶ added in v1.12.0
func (in *ResourceRule) DeepCopy() *ResourceRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceRule.
func (*ResourceRule) DeepCopyInto ¶ added in v1.12.0
func (in *ResourceRule) DeepCopyInto(out *ResourceRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ResourceRule) GroupKind ¶ added in v1.12.0
func (r *ResourceRule) GroupKind() schema.GroupKind
GroupKind returns the schema.GroupKind for the ResourceRule. See the APIGroup field doc for the defaulting rule applied when APIGroup is omitted.
type ResourceSelector ¶ added in v1.12.0
type ResourceSelector struct {
// selector is a structured label query to select objects/namespaces.
// Mutually exclusive with List and StringSelector.
Selector *metav1.LabelSelector `json:"selector,omitempty"`
// stringSelector is a label query in string form to select objects/namespaces.
// Mutually exclusive with List and Selector.
StringSelector string `json:"stringSelector,omitempty"`
// list is the list of object/namespace names to select.
// Mutually exclusive with Selector and StringSelector.
List []string `json:"list,omitempty"`
}
ResourceSelector selects a set of objects/namespaces either by an explicit name list, a structured label selector, or a string label selector. At most one of the three may be set.
func (*ResourceSelector) DeepCopy ¶ added in v1.12.0
func (in *ResourceSelector) DeepCopy() *ResourceSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceSelector.
func (*ResourceSelector) DeepCopyInto ¶ added in v1.12.0
func (in *ResourceSelector) DeepCopyInto(out *ResourceSelector)
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,omitempty"`
}
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,omitzero"`
// helmAction specifies the action to take on a Helm chart
HelmAction string `json:"helmAction,omitempty"`
// name is the chart release.
Name string `json:"name,omitempty"`
// 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,omitempty"`
// 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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Service.
func (*Service) DeepCopyInto ¶
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,omitempty"`
// 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"`
// dependencyUpdate updates dependencies if they are missing before installing the chart
DependencyUpdate *bool `json:"dependencyUpdate,omitempty"`
// wait blocks until all Pods, PVCs, Services, and the 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"`
// waitForJobs blocks until all Jobs complete before marking the release as successful when --wait is enabled.
// It will wait for as long as --timeout
WaitForJobs *bool `json:"waitForJobs,omitempty"`
// createNamespace controls whether to create the release namespace
//
// 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"`
// atomic deletes the installation or upgrade on failure when set.
// The --wait flag will be set automatically if --atomic is used
Atomic *bool `json:"atomic,omitempty"`
// disableHooks prevents hooks from running during install, upgrade, or uninstall
DisableHooks *bool `json:"disableHooks,omitempty"`
// disableOpenAPIValidation skips validation of rendered templates against the Kubernetes OpenAPI schema
DisableOpenAPIValidation *bool `json:"disableOpenAPIValidation,omitempty"`
// timeout is the time to wait for an individual Kubernetes operation such as a hook Job
Timeout *metav1.Duration `json:"timeout,omitempty"`
// skipSchemaValidation determines if JSON schema validation is disabled.
SkipSchemaValidation *bool `json:"skipSchemaValidation,omitempty"`
// replace controls whether an existing release name can be reused
//
// 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"`
// 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"`
// description is the description of a Helm operation
Description string `json:"description,omitempty"`
}
serviceHelmOptions provide helm options.
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ServiceSetSpec `json:"spec,omitempty,omitzero"`
// status describes the observed state
Status ServiceSetStatus `json:"status,omitempty,omitzero"`
}
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. Empty value means self-managed cluster.
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,omitempty,omitzero"`
// 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"`
// provider is the state of the provider
Provider ProviderState `json:"provider,omitempty,omitzero"`
// deployed indicates whether all services were successfully deployed
Deployed bool `json:"deployed,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 {
// provider is the definition of the provider to use to deploy services.
Provider StateManagementProviderConfig `json:"provider,omitempty,omitzero"`
// 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"`
// 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 {
// lastStateTransitionTime is the time the State was last transitioned
LastStateTransitionTime *metav1.Time `json:"lastStateTransitionTime,omitempty"`
// version is the version of the Service
Version string `json:"version,omitempty"`
// type is the type of the deployment method for the Service
Type ServiceType `json:"type,omitempty"`
// name is the name of the Service
Name string `json:"name,omitempty"`
// namespace is the namespace of the Service. Empty value means default namespace.
Namespace string `json:"namespace"`
// template is the name of the ServiceTemplate used to deploy the Service
Template string `json:"template,omitempty"`
// state is the state of the Service
State string `json:"state,omitempty"`
// failureMessage is the reason why the Service failed to deploy
FailureMessage string `json:"failureMessage,omitempty"`
// lastDeployedHash is the verifier's fingerprint of the provider-side
// configuration this service was most recently confirmed Deployed at.
// Used to recognise that a progressing state reported by the provider is
// transient noise from an unrelated apply (rather than a real change to
// this service) and to promote back to Deployed safely.
LastDeployedHash string `json:"lastDeployedHash,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,omitempty"`
// 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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec ServiceTemplateSpec `json:"spec,omitempty,omitzero"`
// status describes the observed state
Status ServiceTemplateStatus `json:"status,omitempty,omitzero"`
}
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 ¶
func (t *ServiceTemplate) HelmChartRef() *helmcontrollerv2.CrossNamespaceSourceReference
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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec TemplateChainSpec `json:"spec,omitempty"`
// status describes the observed state
Status TemplateChainStatus `json:"status,omitempty,omitzero"`
}
ServiceTemplateChain is the Schema for the servicetemplatechains API
func (*ServiceTemplateChain) DeepCopy ¶
func (in *ServiceTemplateChain) DeepCopy() *ServiceTemplateChain
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 (t *ServiceTemplateChain) GetSpec() *TemplateChainSpec
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 ¶
func (in *ServiceTemplateChainList) DeepCopy() *ServiceTemplateChainList
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,omitzero"`
// helm contains the Helm chart information for the template.
Helm *HelmSpec `json:"helm,omitempty,omitzero"`
// kustomize contains the Kustomize configuration for the template.
Kustomize *SourceSpec `json:"kustomize,omitempty,omitzero"`
// resources contains the resource configuration for the template.
Resources *SourceSpec `json:"resources,omitempty,omitzero"`
// version is the semantic version of the application backed by template.
Version string `json:"version,omitempty"`
// k8sConstraint describes compatible Kubernetes versions of the cluster in 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 {
// k8sConstraint describes compatible Kubernetes versions of the cluster in SemVer format.
KubernetesConstraint string `json:"k8sConstraint,omitempty"`
// sourceStatus reflects the status of the source.
SourceStatus *SourceStatus `json:"sourceStatus,omitempty,omitzero"`
// +optional
TemplateStatusCommon `json:",inline,omitzero"`
}
ServiceTemplateStatus defines the observed state of ServiceTemplate
func (*ServiceTemplateStatus) DeepCopy ¶
func (in *ServiceTemplateStatus) DeepCopy() *ServiceTemplateStatus
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,omitempty"`
// namespace is the namespace of the service.
Namespace string `json:"namespace,omitempty"`
// template is the name of the current service template.
Template string `json:"template,omitempty"`
// 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,omitzero"`
// version is the version of the service.
Version string `json:"version,omitempty"`
// helmAction specifies the action on a 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,omitempty"`
// 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.
// Empty value means default namespace.
Namespace string `json:"namespace"`
// template is the name of the ServiceTemplate to use to deploy the service.
Template string `json:"template,omitempty"`
// 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,omitzero"`
// remoteSourceSpec is the remote source of the kustomize manifest.
RemoteSourceSpec *RemoteSourceSpec `json:"remoteSourceSpec,omitempty,omitzero"`
// 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,omitempty"`
// 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,omitempty"`
// name is the name of the remote source.
Name string `json:"name,omitempty"`
// namespace is the namespace of the remote source.
Namespace string `json:"namespace,omitempty"`
// 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"`
// metadata contains the object metadata
metav1.ObjectMeta `json:"metadata,omitempty"`
// spec defines the desired state
Spec StateManagementProviderSpec `json:"spec,omitempty,omitzero"`
// status describes the observed state
Status StateManagementProviderStatus `json:"status,omitempty,omitzero"`
}
StateManagementProvider is the Schema for the statemanagementproviders API
func (*StateManagementProvider) DeepCopy ¶ added in v1.1.0
func (in *StateManagementProvider) DeepCopy() *StateManagementProvider
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
func (in *StateManagementProviderConfig) DeepCopy() *StateManagementProviderConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StateManagementProviderConfig.
func (*StateManagementProviderConfig) DeepCopyInto ¶ added in v1.3.0
func (in *StateManagementProviderConfig) DeepCopyInto(out *StateManagementProviderConfig)
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
func (in *StateManagementProviderList) DeepCopy() *StateManagementProviderList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StateManagementProviderList.
func (*StateManagementProviderList) DeepCopyInto ¶ added in v1.1.0
func (in *StateManagementProviderList) DeepCopyInto(out *StateManagementProviderList)
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,omitempty"`
// adapter is an operator that translates the k0rdent API objects into provider-specific API objects.
// It is represented as a reference to operator object
Adapter ResourceReference `json:"adapter,omitzero"`
// 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,omitempty"`
// provisionerCRDs is a set of references to provider-specific CustomResourceDefinition objects,
// which are required for the provider to operate.
ProvisionerCRDs []ProvisionerCRD `json:"provisionerCRDs,omitempty"`
// suspend suspends the StateManagementProvider. Suspending a StateManagementProvider
// will prevent the adapter from reconciling any resources.
Suspend bool `json:"suspend,omitempty"`
}
StateManagementProviderSpec defines the desired state of StateManagementProvider
func (*StateManagementProviderSpec) DeepCopy ¶ added in v1.1.0
func (in *StateManagementProviderSpec) DeepCopy() *StateManagementProviderSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StateManagementProviderSpec.
func (*StateManagementProviderSpec) DeepCopyInto ¶ added in v1.1.0
func (in *StateManagementProviderSpec) DeepCopyInto(out *StateManagementProviderSpec)
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,omitempty"`
}
StateManagementProviderStatus defines the observed state of StateManagementProvider
func (*StateManagementProviderStatus) DeepCopy ¶ added in v1.1.0
func (in *StateManagementProviderStatus) DeepCopy() *StateManagementProviderStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StateManagementProviderStatus.
func (*StateManagementProviderStatus) DeepCopyInto ¶ added in v1.1.0
func (in *StateManagementProviderStatus) DeepCopyInto(out *StateManagementProviderStatus)
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,omitempty"`
// 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 = ResourceSelector
TargetNamespaces defines the list of namespaces or the label selector to select namespaces. Empty TargetNamespaces selects all namespaces. This is a pure Go-side alias of the generic ResourceSelector: the wire format is unchanged.
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 one route per reachable destination for the given template, hops listed in the order they must be applied. Where several routes lead to the same destination the longest one is kept, so no hop is shortcut past. A hop's Version falls back to its template name, so it is not always a semver.
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 ¶
func (in *TemplateStatusCommon) DeepCopy() *TemplateStatusCommon
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 ¶
func (in *TemplateValidationStatus) DeepCopy() *TemplateValidationStatus
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 {
// upgradePaths contains versions that the service can be upgraded to
//
// 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,omitempty"`
// name is the name of the source.
Name string `json:"name,omitempty"`
}
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.
Source Files
¶
- accessmanagement_types.go
- clusterauditpolicy_types.go
- clusterauthentication_types.go
- clusterdatasource_types.go
- clusterdeployment_types.go
- clusteripam_types.go
- clusteripamclaim_types.go
- clustertemplate_types.go
- clustertemplatechain_types.go
- common.go
- compatibility_contract.go
- credential_types.go
- datasource_types.go
- groupversion_info.go
- indexers.go
- management_backup_types.go
- management_types.go
- multiclusterservice_types.go
- providerinterface_types.go
- providertemplate_types.go
- rbacpolicy_types.go
- region_types.go
- release_types.go
- serviceset_types.go
- servicetemplate_types.go
- servicetemplatechain_types.go
- statemanagementprovider_types.go
- templatechain_common.go
- templates_common.go
- zz_generated.deepcopy.go