Documentation ¶
Index ¶
- func ApplyKCCTargetConfigToCNC(cnc *apisv1alpha1.CustomNodeConfig, gvr metav1.GroupVersionResource, ...)
- func EnsureKCCTargetFinalizer(ctx context.Context, unstructuredControl control.UnstructuredControl, ...) (*unstructured.Unstructured, error)
- func FindMatchedKCCTargetConfigForNode(cnc *apisv1alpha1.CustomNodeConfig, ...) (*unstructured.Unstructured, error)
- func GetRelatedCNCForTargetConfig(customNodeConfigLister v1alpha1.CustomNodeConfigLister, ...) ([]*apisv1alpha1.CustomNodeConfig, error)
- func RemoveKCCTargetFinalizer(ctx context.Context, unstructuredControl control.UnstructuredControl, ...) error
- func UpdateKCCTGenericConditions(status *apisv1alpha1.GenericConfigStatus, ...) bool
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ApplyKCCTargetConfigToCNC ¶
func ApplyKCCTargetConfigToCNC(cnc *apisv1alpha1.CustomNodeConfig, gvr metav1.GroupVersionResource, kccTarget *unstructured.Unstructured, )
ApplyKCCTargetConfigToCNC sets the hash value for the given configurations in CNC
func EnsureKCCTargetFinalizer ¶
func EnsureKCCTargetFinalizer(ctx context.Context, unstructuredControl control.UnstructuredControl, finalizerName string, gvr metav1.GroupVersionResource, target *unstructured.Unstructured, ) (*unstructured.Unstructured, error)
EnsureKCCTargetFinalizer is used to add finalizer in kcc target any component (that depends on kcc target) should add a specific finalizer in the target CR
func FindMatchedKCCTargetConfigForNode ¶
func FindMatchedKCCTargetConfigForNode(cnc *apisv1alpha1.CustomNodeConfig, targetAccessor kcctarget.KatalystCustomConfigTargetAccessor) (*unstructured.Unstructured, error)
FindMatchedKCCTargetConfigForNode is to find this cnc needed config, if there are some configs are still not updated, we skip it. The rule of cnc match to config is: 1. if there is only one matched nodeNames config, and it is valid, return it 2. if there is only one matched labelSelector config with the highest priority, and it is valid, return it 3. if there is only one global config (either nodeNames or labelSelector is not existed), and it is valid, return it 4. otherwise, return nil to keep current state no changed
func GetRelatedCNCForTargetConfig ¶
func GetRelatedCNCForTargetConfig(customNodeConfigLister v1alpha1.CustomNodeConfigLister, unstructured *unstructured.Unstructured) ([]*apisv1alpha1.CustomNodeConfig, error)
GetRelatedCNCForTargetConfig retrieves the currently related CNCs for the configuration based on the following rules: 1. Only configurations that have been updated or marked for deletion are considered. This is determined by checking if ObservedGeneration and Generation are equal, ensuring that the configuration has been validated by the KCC controller. 2. Only valid configurations are considered, as invalid configurations may affect the associated CNCs and should maintain their current state. 3. All CNCs are selected because modifying the target resource can involve more CNCs than those initially selected for the target resource.
func RemoveKCCTargetFinalizer ¶
func RemoveKCCTargetFinalizer(ctx context.Context, unstructuredControl control.UnstructuredControl, finalizerName string, gvr metav1.GroupVersionResource, target *unstructured.Unstructured, ) error
RemoveKCCTargetFinalizer is used to remove finalizer in kcc target any component (that depends on kcc target) should make sure its dependency has been relieved before remove
func UpdateKCCTGenericConditions ¶
func UpdateKCCTGenericConditions(status *apisv1alpha1.GenericConfigStatus, conditionType apisv1alpha1.ConfigConditionType, conditionStatus v1.ConditionStatus, reason, message string, ) bool
UpdateKCCTGenericConditions is used to update conditions for kcc
Types ¶
This section is empty.