Repository: kubean-io/kubean
Pull request #618 (2023-03-31 03:45:00)

Update changes imported by pointer type
<!--  

Thanks for sending a pull request!  Here are some tips for you:

* make sure your commit is signed off

-->

**What type of PR is this?**
<!-- 
Uncomment only one ` /kind <>` line, hit enter to put that in a new line, and remove leading whitespaces from that line:

/kind api-change
/kind bug
/kind cleanup
/kind design
/kind documentation
/kind failing-test
/kind feature
/kind flake
-->
/kind bug

**What this PR does / why we need it**:
related #613 

**Which issue(s) this PR fixes**:
<!--
*Automatically closes linked issue when PR is merged.
Usage: `Fixes #<issue number>`, or `Fixes (paste link of issue)`.
_If PR is about `failing-tests or flakes`, please post the related issues/tests in a comment and do not use `Fixes`_*
-->
Fixes #

**Special notes for your reviewer**:




Patch:
diff --git a/pkg/controllers/clusterops/controller.go b/pkg/controllers/clusterops/controller.go
index 8709b11ea..a8b904480 100644
--- a/pkg/controllers/clusterops/controller.go
+++ b/pkg/controllers/clusterops/controller.go
@@ -535,16 +535,17 @@ func (c *Controller) CreateEntryPointShellConfigMap(clusterOps *clusteroperation
 	}
 	entryPointData := entrypoint.NewEntryPoint()
 	isPrivateKey := !clusterOps.Spec.SSHAuthRef.IsEmpty()
+	builtinActionSource := clusteroperationv1alpha1.BuiltinActionSource
 	for _, action := range clusterOps.Spec.PreHook {
-		if err := entryPointData.PreHookRunPart(string(action.ActionType), action.Action, action.ExtraArgs, isPrivateKey, action.ActionSource == clusteroperationv1alpha1.BuiltinActionSource); err != nil {
+		if err := entryPointData.PreHookRunPart(string(action.ActionType), action.Action, action.ExtraArgs, isPrivateKey, action.ActionSource == nil || *action.ActionSource == builtinActionSource); err != nil {
 			return false, err
 		}
 	}
-	if err := entryPointData.SprayRunPart(string(clusterOps.Spec.ActionType), clusterOps.Spec.Action, clusterOps.Spec.ExtraArgs, isPrivateKey, clusterOps.Spec.ActionSource == clusteroperationv1alpha1.BuiltinActionSource); err != nil {
+	if err := entryPointData.SprayRunPart(string(clusterOps.Spec.ActionType), clusterOps.Spec.Action, clusterOps.Spec.ExtraArgs, isPrivateKey, clusterOps.Spec.ActionSource == nil || *clusterOps.Spec.ActionSource == builtinActionSource); err != nil {
 		return false, err
 	}
 	for _, action := range clusterOps.Spec.PostHook {
-		if err := entryPointData.PostHookRunPart(string(action.ActionType), action.Action, action.ExtraArgs, isPrivateKey, action.ActionSource == clusteroperationv1alpha1.BuiltinActionSource); err != nil {
+		if err := entryPointData.PostHookRunPart(string(action.ActionType), action.Action, action.ExtraArgs, isPrivateKey, action.ActionSource == nil || *action.ActionSource == builtinActionSource); err != nil {
 			return false, err
 		}
 	}
@@ -582,7 +583,7 @@ func (c *Controller) CreateEntryPointShellConfigMap(clusterOps *clusteroperation
 func (c *Controller) HookCustomAction(clusterOps *clusteroperationv1alpha1.ClusterOperation, job *batchv1.Job) error {
 	errMsg := "actionSourceRef must be specified if actionSource set as configmap"
 	for _, action := range clusterOps.Spec.PreHook {
-		if action.ActionSource != clusteroperationv1alpha1.BuiltinActionSource {
+		if action.ActionSource != nil && *action.ActionSource != clusteroperationv1alpha1.BuiltinActionSource {
 			if action.ActionSourceRef.IsEmpty() {
 				return fmt.Errorf(errMsg)
 			}
@@ -591,7 +592,7 @@ func (c *Controller) HookCustomAction(clusterOps *clusteroperationv1alpha1.Clust
 			}
 		}
 	}
-	if clusterOps.Spec.ActionSource != clusteroperationv1alpha1.BuiltinActionSource {
+	if clusterOps.Spec.ActionSource != nil && *clusterOps.Spec.ActionSource != clusteroperationv1alpha1.BuiltinActionSource {
 		if clusterOps.Spec.ActionSourceRef.IsEmpty() {
 			return fmt.Errorf(errMsg)
 		}
@@ -600,7 +601,7 @@ func (c *Controller) HookCustomAction(clusterOps *clusteroperationv1alpha1.Clust
 		}
 	}
 	for _, action := range clusterOps.Spec.PostHook {
-		if action.ActionSource != clusteroperationv1alpha1.BuiltinActionSource {
+		if action.ActionSource != nil && *action.ActionSource != clusteroperationv1alpha1.BuiltinActionSource {
 			if action.ActionSourceRef.IsEmpty() {
 				return fmt.Errorf(errMsg)
 			}
diff --git a/vendor/kubean.io/api/apis/clusteroperation/v1alpha1/types.go b/vendor/kubean.io/api/apis/clusteroperation/v1alpha1/types.go
index da9b20ec8..753acc684 100644
--- a/vendor/kubean.io/api/apis/clusteroperation/v1alpha1/types.go
+++ b/vendor/kubean.io/api/apis/clusteroperation/v1alpha1/types.go
@@ -63,7 +63,7 @@ type Spec struct {
 	Action string `json:"action"`
 	// +optional
 	// +kubebuilder:default="builtin"
-	ActionSource ActionSource `json:"actionSource"`
+	ActionSource *ActionSource `json:"actionSource"`
 	// +optional
 	ActionSourceRef *apis.ConfigMapRef `json:"actionSourceRef"`
 	// +optional
@@ -89,7 +89,7 @@ type HookAction struct {
 	Action string `json:"action"`
 	// +optional
 	// +kubebuilder:default="builtin"
-	ActionSource ActionSource `json:"actionSource"`
+	ActionSource *ActionSource `json:"actionSource"`
 	// +optional
 	ActionSourceRef *apis.ConfigMapRef `json:"actionSourceRef"`
 	// +optional
diff --git a/vendor/kubean.io/api/apis/clusteroperation/v1alpha1/zz_generated.deepcopy.go b/vendor/kubean.io/api/apis/clusteroperation/v1alpha1/zz_generated.deepcopy.go
index 6d44dd20d..88f765a7d 100644
--- a/vendor/kubean.io/api/apis/clusteroperation/v1alpha1/zz_generated.deepcopy.go
+++ b/vendor/kubean.io/api/apis/clusteroperation/v1alpha1/zz_generated.deepcopy.go
@@ -74,6 +74,11 @@ func (in *ClusterOperationList) DeepCopyObject() runtime.Object {
 // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
 func (in *HookAction) DeepCopyInto(out *HookAction) {
 	*out = *in
+	if in.ActionSource != nil {
+		in, out := &in.ActionSource, &out.ActionSource
+		*out = new(ActionSource)
+		**out = **in
+	}
 	if in.ActionSourceRef != nil {
 		in, out := &in.ActionSourceRef, &out.ActionSourceRef
 		*out = new(apis.DataRef)
@@ -115,6 +120,11 @@ func (in *Spec) DeepCopyInto(out *Spec) {
 		*out = new(apis.DataRef)
 		**out = **in
 	}
+	if in.ActionSource != nil {
+		in, out := &in.ActionSource, &out.ActionSource
+		*out = new(ActionSource)
+		**out = **in
+	}
 	if in.ActionSourceRef != nil {
 		in, out := &in.ActionSourceRef, &out.ActionSourceRef
 		*out = new(apis.DataRef)


Test patch:
diff --git a/docs/test/kubean_testcase.md b/docs/test/kubean_testcase.md
index e766ed253..d717548d5 100644
--- a/docs/test/kubean_testcase.md
+++ b/docs/test/kubean_testcase.md
@@ -1,100 +1,99 @@
 # Kubean test case
 
-| Function              | Case Name                                                                                             | Declaration              | Requirement ID | Status                 | Code Link                                                                                    | Test details                                                                                                                       |
-|-----------------------|-------------------------------------------------------------------------------------------------------|--------------------------|---------------|------------------------|----------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------|
-| Create basic cluster  | Support one node cluster: only one master node                                                        | master and worker in one node | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
-|                       | Support CRI: containerd                                                                               |                          | C-013         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
-|                       | Support CNI: calico                                                                                   |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#support-cni-calico)                                                                  |
-|                       | Support calico tunnel mode: IPIP                                                                      |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
-|                       | Not overwirte hostname                                                                                |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_reset_e2e/kubean_cluster_reset_test.go)                        | [detail](./testcase_details/create_cluster.md#not-overwrite-hostname)                                                              |
-|                       | Support disable cluster ca auto_renew                                                                 |                          | C-015         |                        |                                                                                              | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
-|                       | Ssh authorization: user name and password                                                             |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
-| Create cluster:extend | Create cluster topology: 1 master and 1 worker                                                        |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#create-cluster-with-one-master-and-one-worker)                                       |
-|                       | Create cluster topology: 3 master and 2 worker                                                        |                          | C-012         |                        |                                                                                              | [detail](./testcase_details/create_cluster.md#create-cluster-topology-3-master-and-2-worker)                                       |
-|                       | Support k8s: 1.23                                                                                     |                          | C-012         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#support-k8s-1230)                                                                    |
-|                       | Support k8s: 1.24                                                                                     |                          | C-012         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#support-k8s-124)                                                                     |
-|                       | Support k8s: 1.25                                                                                     |                          | C-012         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           |                                                                                                                                    |
-|                       | Support CRI: docker                                                                                   |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#support-cri-docker)                                                                  |
-|                       | SSH authorization: private key                                                                        |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_add_remove_worker_nightlye2e/kubean_add_remove_worker_test.go) | [detail](./testcase_details/create_cluster.md#ssh-authorization-private-key)                                                       |
-|                       | Support single stack calico tunnel mode: IPIP_Always                                                  |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-cluster-with-calico-vxlan_always-tuning-mode)                                 |
-|                       | Support single stack calico tunnel mode: IPIP_CrossSubnet                                             |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-cluster-with-calico-ipip_crosssubnet-tuning-mode)                             |
-|                       | Support single stack calico tunnel mode: Vxlan_Always                                                 |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-cluster-with-calico-vxlan_always-tuning-mode)                                 |
-|                       | Support single stack calico tunnel mode: Vxlan_CrossSubnet                                            |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-cluster-with-calico-vxlan_crosssubnet-tuning-mode)                            |
-|                       | Support single stack calico: kube_pods_subnet                                                         | kube_pods_subnet         | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#support-kube_pods_subnet)                                                            |
-|                       | Support single stack calico: kube_service_addresses                                                   | kube_service_addresses   | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#support-kube_service_addresses)                                                      |
-|                       | Support dual stack calico tunnel mode: IPIP_Always + Vxlan_CrossSubnet                                |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_dualstack_e2e/kubean_calico_dual_stack_test.go)         | [detail](./testcase_details/create_cluster.md#create-cluster-support--calico-dual-stack-v4-ipip_alwaysv4_vxlan_crosssubnetv6)      |
-|                       | Support dual stack calico tunnel mode: IPIP_CrossSubnet +  Vxlan_CrossSubnet                          |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_dualstack_e2e/kubean_calico_dual_stack_test.go)         | [detail](./testcase_details/create_cluster.md#create-cluster-support--calico-dual-stack-v4-ipip_crosssubnetv4_vxlan_crosssubnetv6) |
-|                       | Support dual stack calico tunnel mode: Vxlan_Always + Vxlan_Always                                    |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_dualstack_e2e/kubean_calico_dual_stack_test.go)         | [detail](./testcase_details/create_cluster.md#create-cluster-support--calico-dual-stack-v4-vxlan_alwaysv4_vxlan_alwaysv6)          |
-|                       | Support dual stack calico tunnel mode: Vxlan_CrossSubnet + Vxlan_Always                               |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_dualstack_e2e/kubean_calico_dual_stack_test.go)         | [detail](./testcase_details/create_cluster.md#create-cluster-support--calico-dual-stack-v4-vxlan_crosssubnetv4_vxlan_alwaysv6)     |
-|                       | Support dual stack calico: kube_pods_subnet of ipv4 and ipv6                                          |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support dual stack calico: kube_service_addresses of ipv4 and ipv6                                    |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support create cilium clusters                                                                        |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go)              | [detail](./testcase_details/create_cluster.md#create-cilium-cluster)                                                               |
-|                       | Support CNI: none                                                                                     | onlu install only cni dependency | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Cluster node on different sub net                                                                     |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support CRI: runc/kata/gvisor                                                                         |                          | C-042         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support cilium: kube_pods_subnet                                                                      |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go)              | [detail](./testcase_details/create_cluster.md#create-cilium-cluster)                                                               |
-|                       | Support cilium: kube_service_addresses                                                                |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go)              | [detail](./testcase_details/create_cluster.md#create-cilium-cluster)                                                               |
-|                       | Support cluster ca auto_renew                                                                         | auto_renew_certificates:true | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support overwrite hostname                                                                            | override_system_hostname=true | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#support-overwrite-hostname)                                                          |
-|                       | Support install k8s on Readhat8 node: online                                                          |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat8-os)                                                                 |
-|                       | Support install k8s on Readhat7 node: online                                                          |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat7-os)                                                                 |
-|                       | Support install k8s on Centos8 node: online                                                           |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-centos8-os)                                                                  |
-|                       | Support install k8s on KylinV10SP2 node: offline                                                      |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           |                                                                                                                                    |
-|                       | Support install k8s on Readhat8 node: offline                                                         |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat8-os)                                                                 |
-|                       | Support install k8s on Readhat7 node: offline                                                         |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat7-os)                                                                 |
-|                       | Support install k8s on Centos7 node: offline                                                          |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat7-os)                                                                 |
-|                       | Support create cluster on public clouds                                                               |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support create cluster on physical machine                                                            |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support kube-vip                                                                                      |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support ipvs mode                                                                                     |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support iptable mode                                                                                  |                          | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_functions_e2e/kubean_cluster_install_test.go)                   | [detail](./testcase_details/create_cluster.md#support-iptables-mode)                                                               |
-|                       | Support non root user install                                                                         |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support local DNS server                                                                              |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support local NTP server                                                                              |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support set kubelet_max_pods                                                                          |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support set kubernetes_audit                                                                          |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Support local insecure registry                                                                       |                          | C-001         |                        |                                                                                              |                                                                                                                                    |
-|                       | Create cluster with same node name, should be fail                                                    |                          | C-001         |                        |                                                                                              | [detail](./testcase_details/create_cluster.md#create-cluster-set-all-the-nodes-with-same-name)                                     |
-|                       | Support kubean install not in kubean-system                                                           |                          |               |                        |                                                                                              |                                                                                                                                    |
-| Reset                 | Cluster reset                                                                                         |                          |               | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_reset_e2e/kubean_cluster_reset_test.go)                        | [detail](./testcase_details/cluster_operation.md#cluster-reset)                                                                    |
-|                       | Retry 0 times when job fail                                                                           | backoffLimit=0           |               | <ul><li>[x] </li></ul> | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubean_bol0_test.go)                   | [detail](./testcase_details/cluster_operation.md#retry-0-times-when-job-fail)                                                      |
-|                       | Retry 1 times when job fail                                                                           | backoffLimit=1           |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubean_bol1_test.go)                   |                                                                                                                                    |
-|                       | Retry 2 times when job fail                                                                           | backoffLimit=2           |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubean_bol2_test.go)                   |                                                                                                                                    |
-| Cluster Function      | Posthook  the kubeconfig  to kubean                                                                   |                          |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/kubean_func.md#posthook-cluster-kubeconfig)                                                            |
-|                       | Limit concurrent operations of the cluster                                                            |                          |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubeanOps_test.go)                     |                                                                                                                                    |                                                                        |                                                                                                 |
-|                       | Delete the backup resources reverse order                                                             | default reserve 5 copies |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubeanOps_test.go)                     |                                                                                                                                    |
-|                       | Anti-modification flag can be set when backup resource be modified                                    |                          |               |                        |                                                                                              |                                                                                                                                    |
-| Add/Remove node       | Add master online                                                                                     |                          | C-004         |                        |                                                                                              |                                                                                                                                    |
-|                       | Add worker online                                                                                     |                          | C-004         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_add_remove_worker_nightlye2e/kubean_add_remove_worker_test.go) | [detail](./testcase_details/cluster_operation.md#add-worker)                                                                       |
-|                       | Remove worker online                                                                                  |                          | C-004         |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubean_add_remove_worker_nightlye2e/kubean_add_remove_worker_test.go) | [detail](./testcase_details/cluster_operation.md#remove-online-worker)                                                             |
-|                       | Add worker offline                                                                                    |                          | C-004         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#remove-offline-worker)                                                            |
-|                       | Remove worker offline                                                                                 |                          | C-004         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#remove-offline-worker)                                                            |
-|                       | Remove online/offline master                                                                          |                          | C-004         |                        |                                                                                              |                                                                                                                                    |
-|                       | Online master down in remove procedure                                                                |                          | C-004         |                        |                                                                                              |                                                                                                                                    |
-|                       | Online worker down in remove procedure                                                                |                          | C-004         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#online-worker-down-in-remove-procedure)                                           |
-|                       | Readd master node to cluster                                                                          |                          | C-015         |                        |                                                                                              |                                                                                                                                    |
-|                       | Readd a worker to cluster                                                                             |                          | C-015         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#readd-a-worker-to-cluster)                                                        |
-|                       | Manual update ca                                                                                      | kubeadmin renew          | C-015         |                        |                                                                                              |                                                                                                                                    |
-| Hot upgrade           | Hot upgrade k8s Z version: online                                                                     |                          | C-003         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           |
-|                       | Hot upgrade k8s Y version: online                                                                     |                          | C-003         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/cluster_operation.md#hot-upgrade-k8s-y-version-online)                                                 |
-|                       | Hot upgrade k8s Z  version: offline                                                                   |                          | C-003         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hot upgrade k8s Y  version: offline                                                                   |                          | C-003         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hot upgrade CNI                                                                                       | To be determined         | C-003         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hot upgrade CRI-containerd online/offline                                                             |                          | C-003         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hot upgrade CRI-docker online/offline                                                                 |                          | C-003         |                        |                                                                                              |                                                                                                                                    |
-|                       | Use low kubean install a low version k8s, then upgrade kubean, and upgrande kubean version to highest |                          | C-003         |                        |                                                                                              |                                                                                                                                    |
-| High availability     | Hight availability of not firt master : Node crash                                                    |                          | L-019         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hight availability of not firt master: CPU Insufficient                                               |                          | L-019         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hight availability of not firt master: Disk Insufficient                                              |                          | L-019         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hight availability of not firt master: Memory Insufficient                                            |                          | L-019         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hight availability of not firt master: Network unstable                                               |                          | L-019         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hight availability of leader etcd                                                                     |                          | L-019         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hight availability of follower etcd                                                                   |                          | L-019         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hight availability of worker: Node crash                                                              |                          | L-018         |                        |                                                                                              |                                                                                                                                    |
-|                       | Hight availability of firt master                                                                     | To be determind          | L-019         |                        |                                                                                              |                                                                                                                                    |
-| Others                | Hardware accelerator                                                                                  | To be determind          |               |                        |                                                                                              |                                                                                                                                    |
-|                       | Ntp func when create cluster                                                                          |                          | C-001         |                        |                                                                                              | [detail](./testcase_details/create_cluster.md#ntp-func-when-create-cluster)                                                        |
-|                       | Ntp func while cluster in use                                                                         |                          | C-001         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#readd-a-worker-to-cluster)                                                        |
-|                       | Install kubean on not kubean-system namespace                                                         |                          |               |                        |                                                                                              |                                                                                                                                    |
-|                       | k8s version compatibility test, from 1.20 to 1.26                                                     |                          |               | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_k8s_compatibility_e2e/kubean_k8s_compatibility_test.go)        |                                                                                                                                    |
-|                       | Set up multiple kubean operator replicas                                                              | set replicas to 3        |               | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go)              | [detail](./testcase_details/kubean_func.md#set-multi-kubean-operator)                                                              |
+| Function              | Case Name                                                                                             | Declaration                          | Requirement ID | Status                 | Code Link                                                                                    | Test details                                                                                                                       |
+|-----------------------|-------------------------------------------------------------------------------------------------------|--------------------------------------|---------------|------------------------|----------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------|
+| Create basic cluster  | Support one node cluster: only one master node                                                        |master and worker in one node         | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
+|                       | Support CRI: containerd                                                                               |                                      | C-013         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
+|                       | Support CNI: calico                                                                                   |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#support-cni-calico)                                                                  |
+|                       | Support calico tunnel mode: IPIP                                                                      |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
+|                       | Not overwirte hostname                                                                                |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_reset_e2e/kubean_cluster_reset_test.go)                        | [detail](./testcase_details/create_cluster.md#not-overwrite-hostname)                                                              |
+|                       | Support disable cluster ca auto_renew                                                                 |                                      | C-015         |                        |                                                                                              | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
+|                       | Ssh authorization: user name and password                                                             |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#create-basic-cluster)                                                                |
+| Create cluster:extend | Create cluster topology: 1 master and 1 worker                                                        |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#create-cluster-with-one-master-and-one-worker)                                       |
+|                       | Create cluster topology: 3 master and 2 worker                                                        |                                      | C-012         |                        |                                                                                              | [detail](./testcase_details/create_cluster.md#create-cluster-topology-3-master-and-2-worker)                                       |
+|                       | Support k8s: 1.23                                                                                     |                                      | C-012         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#support-k8s-1230)                                                                    |
+|                       | Support k8s: 1.24                                                                                     |                                      | C-012         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#support-k8s-124)                                                                     |
+|                       | Support k8s: 1.25                                                                                     |                                      | C-012         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           |                                                                                                                                    |
+|                       | Support CRI: docker                                                                                   |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/create_cluster.md#support-cri-docker)                                                                  |
+|                       | SSH authorization: private key                                                                        |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_add_remove_worker_nightlye2e/kubean_add_remove_worker_test.go) | [detail](./testcase_details/create_cluster.md#ssh-authorization-private-key)                                                       |
+|                       | Support single stack calico tunnel mode: IPIP_Always                                                  |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-cluster-with-calico-vxlan_always-tuning-mode)                                 |
+|                       | Support single stack calico tunnel mode: IPIP_CrossSubnet                                             |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-cluster-with-calico-ipip_crosssubnet-tuning-mode)                             |
+|                       | Support single stack calico tunnel mode: Vxlan_Always                                                 |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-cluster-with-calico-vxlan_always-tuning-mode)                                 |
+|                       | Support single stack calico tunnel mode: Vxlan_CrossSubnet                                            |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_nightlye2e/kubean_network_calico_test.go)               | [detail](./testcase_details/create_cluster.md#create-cluster-with-calico-vxlan_crosssubnet-tuning-mode)                            |
+|                       | Support single stack calico: kube_pods_subnet                                                         | kube_pods_subnet                     | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#support-kube_pods_subnet)                                                            |
+|                       | Support single stack calico: kube_service_addresses                                                   | kube_service_addresses               | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#support-kube_service_addresses)                                                      |
+|                       | Support dual stack calico tunnel mode: IPIP_Always + Vxlan_CrossSubnet                                |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_dualstack_e2e/kubean_calico_dual_stack_test.go)         | [detail](./testcase_details/create_cluster.md#create-cluster-support--calico-dual-stack-v4-ipip_alwaysv4_vxlan_crosssubnetv6)      |
+|                       | Support dual stack calico tunnel mode: IPIP_CrossSubnet +  Vxlan_CrossSubnet                          |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_dualstack_e2e/kubean_calico_dual_stack_test.go)         | [detail](./testcase_details/create_cluster.md#create-cluster-support--calico-dual-stack-v4-ipip_crosssubnetv4_vxlan_crosssubnetv6) |
+|                       | Support dual stack calico tunnel mode: Vxlan_Always + Vxlan_Always                                    |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_dualstack_e2e/kubean_calico_dual_stack_test.go)         | [detail](./testcase_details/create_cluster.md#create-cluster-support--calico-dual-stack-v4-vxlan_alwaysv4_vxlan_alwaysv6)          |
+|                       | Support dual stack calico tunnel mode: Vxlan_CrossSubnet + Vxlan_Always                               |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_calico_dualstack_e2e/kubean_calico_dual_stack_test.go)         | [detail](./testcase_details/create_cluster.md#create-cluster-support--calico-dual-stack-v4-vxlan_crosssubnetv4_vxlan_alwaysv6)     |
+|                       | Support dual stack calico: kube_pods_subnet of ipv4 and ipv6                                          |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support dual stack calico: kube_service_addresses of ipv4 and ipv6                                    |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support create cilium clusters                                                                        |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go)              | [detail](./testcase_details/create_cluster.md#create-cilium-cluster)                                                               |
+|                       | Support CNI: none                                                                                     | onlu install only cni dependency     | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Cluster node on different sub net                                                                     |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support CRI: runc/kata/gvisor                                                                         |                                      | C-042         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support cilium: kube_pods_subnet                                                                      |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go)              | [detail](./testcase_details/create_cluster.md#create-cilium-cluster)                                                               |
+|                       | Support cilium: kube_service_addresses                                                                |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go)              | [detail](./testcase_details/create_cluster.md#create-cilium-cluster)                                                               |
+|                       | Support cluster ca auto_renew                                                                         | auto_renew_certificates:true         | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support overwrite hostname                                                                            | override_system_hostname=true        | C-001         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_functions_e2e/kubean_cluster_install_test.go)                  | [detail](./testcase_details/create_cluster.md#support-overwrite-hostname)                                                          |
+|                       | Support install k8s on Readhat8 node: online                                                          |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat8-os)                                                                 |
+|                       | Support install k8s on Readhat7 node: online                                                          |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat7-os)                                                                 |
+|                       | Support install k8s on Centos8 node: online                                                           |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-centos8-os)                                                                  |
+|                       | Support install k8s on KylinV10SP2 node: offline                                                      |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           |                                                                                                                                    |
+|                       | Support install k8s on Readhat8 node: offline                                                         |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat8-os)                                                                 |
+|                       | Support install k8s on Readhat7 node: offline                                                         |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat7-os)                                                                 |
+|                       | Support install k8s on Centos7 node: offline                                                          |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_os_compatibility_e2e/kubean_os_compatibility_test.go)           | [detail](./testcase_details/create_cluster.md#support-readhat7-os)                                                                 |
+|                       | Support create cluster on public clouds                                                               |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support create cluster on physical machine                                                            |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support kube-vip                                                                                      |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support ipvs mode                                                                                     |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support iptable mode                                                                                  |                                      | C-001         | <ul><li>[x] </li></ul> | [Code Link](../..test/kubean_functions_e2e/kubean_cluster_install_test.go)                   | [detail](./testcase_details/create_cluster.md#support-iptables-mode)                                                               |
+|                       | Support non root user install                                                                         |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support local DNS server                                                                              |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support local NTP server                                                                              |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support set kubelet_max_pods                                                                          |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support set kubernetes_audit                                                                          |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Support local insecure registry                                                                       |                                      | C-001         |                        |                                                                                              |                                                                                                                                    |
+|                       | Create cluster with same node name, should be fail                                                    |                                      | C-001         |                        |                                                                                              | [detail](./testcase_details/create_cluster.md#create-cluster-set-all-the-nodes-with-same-name)                                     |
+|                       | Support kubean install not in kubean-system                                                           |                                      |               |                        |                                                                                              |                                                                                                                                    |
+| Reset                 | Cluster reset                                                                                         |                                      |               | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_reset_e2e/kubean_cluster_reset_test.go)                        | [detail](./testcase_details/cluster_operation.md#cluster-reset)                                                                    |
+|                       | Retry 0 times when job fail                                                                           | backoffLimit=0                       |               | <ul><li>[x] </li></ul> | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubean_bol0_test.go)                   | [detail](./testcase_details/cluster_operation.md#retry-0-times-when-job-fail)                                                      |
+|                       | Retry 1 times when job fail                                                                           | backoffLimit=1                       |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubean_bol1_test.go)                   |                                                                                                                                    |
+|                       | Retry 2 times when job fail                                                                           | backoffLimit=2                       |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubean_bol2_test.go)                   |                                                                                                                                    |
+| Cluster Function      | Posthook  the kubeconfig  to kubean                                                                   |                                      |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/kubean_func.md#posthook-cluster-kubeconfig)                                                            |
+|                       | Limit concurrent operations of the cluster                                                            |                                      |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubeanOps_test.go)                     |                                                                                                                                    |                                                                        |                                                                                                 |
+|                       | Delete the backup resources reverse order                                                             | default reserve 5 copies             |               |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubeanOps_functions_nightlye2e/kubeanOps_test.go)                     |                                                                                                                                    |
+|                       | Anti-modification flag can be set when backup resource be modified                                    |                                      |               |                        |                                                                                              |                                                                                                                                    |
+| Add/Remove node       | Add master online                                                                                     |                                      | C-004         |                        |                                                                                              |                                                                                                                                    |
+|                       | Add worker online                                                                                     |                                      | C-004         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_add_remove_worker_nightlye2e/kubean_add_remove_worker_test.go) | [detail](./testcase_details/cluster_operation.md#add-worker)                                                                       |
+|                       | Remove worker online                                                                                  |                                      | C-004         |<ul><li>[x] </li></ul>  | [Code Link](../../test/kubean_add_remove_worker_nightlye2e/kubean_add_remove_worker_test.go) | [detail](./testcase_details/cluster_operation.md#remove-online-worker)                                                             |
+|                       | Add worker offline                                                                                    |                                      | C-004         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#remove-offline-worker)                                                            |
+|                       | Remove worker offline                                                                                 |                                      | C-004         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#remove-offline-worker)                                                            |
+|                       | Remove online/offline master                                                                          |                                      | C-004         |                        |                                                                                              |                                                                                                                                    |
+|                       | Online master down in remove procedure                                                                |                                      | C-004         |                        |                                                                                              |                                                                                                                                    |
+|                       | Online worker down in remove procedure                                                                |                                      | C-004         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#online-worker-down-in-remove-procedure)                                           |
+|                       | Readd master node to cluster                                                                          |                                      | C-015         |                        |                                                                                              |                                                                                                                                    |
+|                       | Readd a worker to cluster                                                                             |                                      | C-015         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#readd-a-worker-to-cluster)                                                        |
+|                       | Manual update ca                                                                                      | kubeadmin renew                      | C-015         |                        |                                                                                              |                                                                                                                                    |
+| Hot upgrade           | Hot upgrade k8s Z version: online                                                                     |                                      | C-003         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           |
+|                       | Hot upgrade k8s Y version: online                                                                     |                                      | C-003         | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_sonobouy_nightlye2e/kubean_cluster_sonobouy_test.go)           | [detail](./testcase_details/cluster_operation.md#hot-upgrade-k8s-y-version-online)                                                 |
+|                       | Hot upgrade k8s Z  version: offline                                                                   |                                      | C-003         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hot upgrade k8s Y  version: offline                                                                   |                                      | C-003         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hot upgrade CNI                                                                                       | To be determined                     | C-003         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hot upgrade CRI-containerd online/offline                                                             |                                      | C-003         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hot upgrade CRI-docker online/offline                                                                 |                                      | C-003         |                        |                                                                                              |                                                                                                                                    |
+|                       | Use low kubean install a low version k8s, then upgrade kubean, and upgrande kubean version to highest |                                      | C-003         |                        |                                                                                              |                                                                                                                                    |
+| High availability     | Hight availability of not firt master : Node crash                                                    |                                      | L-019         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hight availability of not firt master: CPU Insufficient                                               |                                      | L-019         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hight availability of not firt master: Disk Insufficient                                              |                                      | L-019         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hight availability of not firt master: Memory Insufficient                                            |                                      | L-019         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hight availability of not firt master: Network unstable                                               |                                      | L-019         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hight availability of leader etcd                                                                     |                                      | L-019         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hight availability of follower etcd                                                                   |                                      | L-019         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hight availability of worker: Node crash                                                              |                                      | L-018         |                        |                                                                                              |                                                                                                                                    |
+|                       | Hight availability of firt master                                                                     | To be determind                      | L-019         |                        |                                                                                              |                                                                                                                                    |
+| Others                | Hardware accelerator                                                                                  | To be determind                      |               |                        |                                                                                              |                                                                                                                                    |
+|                       | Ntp func when create cluster                                                                          |                                      | C-001         |                        |                                                                                              | [detail](./testcase_details/create_cluster.md#ntp-func-when-create-cluster)                                                        |
+|                       | Ntp func while cluster in use                                                                         |                                      | C-001         |                        |                                                                                              | [detail](./testcase_details/cluster_operation.md#readd-a-worker-to-cluster)                                                        |
+|                       | Install kubean on not kubean-system namespace                                                         |                                      |               |                        |                                                                                              |                                                                                                                                    |
+|                       | k8s version compatibility test, from 1.20 to 1.26                                                     |                                      |               | <ul><li>[x] </li></ul> | [Code Link](../../test/kubean_k8s_compatibility_e2e/kubean_k8s_compatibility_test.go)        |                                                                                                                                    |
diff --git a/docs/test/testcase_details/kubean_func.md b/docs/test/testcase_details/kubean_func.md
index 4ba56b24b..f926d660d 100644
--- a/docs/test/testcase_details/kubean_func.md
+++ b/docs/test/testcase_details/kubean_func.md
@@ -3,11 +3,4 @@
 ###  Posthook cluster kubeconfig
     1. create a basic cluster
     2. use the kubeconfig in  configmap: {{cluster-name}}-kubeconf to query cluster
-    3. reset the basic cluster
-
-### Set multi kubean operator
-    1. create a kind cluster
-    2. deploy kubean
-    3. use kubectl scale deployment to set kubean operator to 3
-    4. check the kubean deployment, the ReadyReplicas should be 3
-    5. deploy clusters with kubean
\ No newline at end of file
+    3. reset the basic cluster
\ No newline at end of file
diff --git a/hack/run-network-e2e.sh b/hack/run-network-e2e.sh
index c94b98e9b..06ad52625 100644
--- a/hack/run-network-e2e.sh
+++ b/hack/run-network-e2e.sh
@@ -63,8 +63,6 @@ sed -i "s/10.96.0.0\/12/10.88.0.0\/16/" "${dest_config_path}"/vars-conf-cm.yml
 sed -i "s/192.168.128.0/192.88.128.0/" "${dest_config_path}"/vars-conf-cm.yml
 #add this line to set cilium_kube_proxy_replacement: partial, if kubespray update the cilium_kube_proxy_replacement default value to partial, this line can be deleted
 sed -i "$ a\    cilium_kube_proxy_replacement: partial" "${dest_config_path}"/vars-conf-cm.yml
-#set kubean operator replicas to 3
-kubectl scale deployment kubean -n kubean-system --replicas=3 --kubeconfig="${KUBECONFIG_FILE}"
 
 ginkgo -v -race -timeout=3h  --fail-fast ./test/kubean_cilium_cluster_e2e/  -- --kubeconfig="${KUBECONFIG_FILE}" \
           --clusterOperationName="${CLUSTER_OPERATION_NAME1}"  --vmipaddr="${vm_ip_addr1}" --vmipaddr2="${vm_ip_addr2}" \
diff --git a/pkg/controllers/clusterops/controller_test.go b/pkg/controllers/clusterops/controller_test.go
index 4ba522bb8..be184ba89 100644
--- a/pkg/controllers/clusterops/controller_test.go
+++ b/pkg/controllers/clusterops/controller_test.go
@@ -487,6 +487,8 @@ func TestNewKubesprayJob(t *testing.T) {
 
 func TestController_HookCustomAction(t *testing.T) {
 	os.Setenv("POD_NAMESPACE", "mynamespace")
+	builtinActionSource := clusteroperationv1alpha1.BuiltinActionSource
+	configmapActionSource := clusteroperationv1alpha1.ConfigMapActionSource
 	controller := Controller{
 		Client:                newFakeClient(),
 		ClientSet:             clientsetfake.NewSimpleClientset(),
@@ -519,7 +521,7 @@ func TestController_HookCustomAction(t *testing.T) {
 				clusterOps.Spec.PreHook = nil
 				clusterOps.Spec.PostHook = nil
 
-				clusterOps.Spec.ActionSource = clusteroperationv1alpha1.ConfigMapActionSource
+				clusterOps.Spec.ActionSource = &configmapActionSource
 			},
 			wantErr: true,
 		},
@@ -529,7 +531,7 @@ func TestController_HookCustomAction(t *testing.T) {
 				clusterOps.Spec.PreHook = nil
 				clusterOps.Spec.PostHook = nil
 
-				clusterOps.Spec.ActionSource = clusteroperationv1alpha1.ConfigMapActionSource
+				clusterOps.Spec.ActionSource = &configmapActionSource
 				clusterOps.Spec.ActionSourceRef = &apis.ConfigMapRef{
 					Name:      "myplaybook",
 					NameSpace: "mynamespace",
@@ -542,8 +544,8 @@ func TestController_HookCustomAction(t *testing.T) {
 			setAction: func() {
 				clusterOps.Spec.PreHook = nil
 				clusterOps.Spec.PostHook = nil
-				clusterOps.Spec.PreHook = []clusteroperationv1alpha1.HookAction{{ActionSource: clusteroperationv1alpha1.BuiltinActionSource, ActionType: clusteroperationv1alpha1.PlaybookActionType, Action: "ping.yml"}}
-				clusterOps.Spec.PostHook = []clusteroperationv1alpha1.HookAction{{ActionSource: clusteroperationv1alpha1.BuiltinActionSource, ActionType: clusteroperationv1alpha1.PlaybookActionType, Action: "ping.yml"}}
+				clusterOps.Spec.PreHook = []clusteroperationv1alpha1.HookAction{{ActionSource: &builtinActionSource, ActionType: clusteroperationv1alpha1.PlaybookActionType, Action: "ping.yml"}}
+				clusterOps.Spec.PostHook = []clusteroperationv1alpha1.HookAction{{ActionSource: &builtinActionSource, ActionType: clusteroperationv1alpha1.PlaybookActionType, Action: "ping.yml"}}
 			},
 			wantErr: false,
 		},
@@ -554,7 +556,7 @@ func TestController_HookCustomAction(t *testing.T) {
 				clusterOps.Spec.PostHook = nil
 				clusterOps.Spec.PreHook = []clusteroperationv1alpha1.HookAction{
 					{
-						ActionSource: clusteroperationv1alpha1.ConfigMapActionSource,
+						ActionSource: &configmapActionSource,
 						ActionSourceRef: &apis.ConfigMapRef{
 							Name:      "myplaybook",
 							NameSpace: "mynamespace",
@@ -563,7 +565,7 @@ func TestController_HookCustomAction(t *testing.T) {
 				}
 				clusterOps.Spec.PostHook = []clusteroperationv1alpha1.HookAction{
 					{
-						ActionSource: clusteroperationv1alpha1.ConfigMapActionSource,
+						ActionSource: &configmapActionSource,
 						ActionSourceRef: &apis.ConfigMapRef{
 							Name:      "myplaybook",
 							NameSpace: "mynamespace",
diff --git a/test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go b/test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go
index e776b0813..3febc2ae9 100644
--- a/test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go
+++ b/test/kubean_cilium_cluster_e2e/create_cilium_cluster_test.go
@@ -41,20 +41,6 @@ var _ = ginkgo.Describe("create cilium clusters one master and one worker", func
 		klog.Info("nginx image is: ", nginxImage)
 		klog.Info("offlineFlag is: ", offlineFlag)
 		klog.Info("arch is: ", tools.Arch)
-		//check kubean deployment status
-		ginkgo.It("check kubean deployment status", func() {
-			cluster1Config, err := clientcmd.BuildConfigFromFlags("", localKubeConfigPath)
-			gomega.ExpectWithOffset(2, err).NotTo(gomega.HaveOccurred(), "Failed new cluster1Config set")
-			cluster1Client, err := kubernetes.NewForConfig(cluster1Config)
-			gomega.ExpectWithOffset(2, err).NotTo(gomega.HaveOccurred(), "Failed new cluster1Client")
-
-			deploymentList, _ := cluster1Client.AppsV1().Deployments(tools.KubeanNamespace).List(context.TODO(), metav1.ListOptions{})
-			for _, dm := range deploymentList.Items {
-				if dm.Name == "kubean" {
-					gomega.Expect(dm.Status.AvailableReplicas).To(gomega.Equal(3))
-				}
-			}
-		})
 
 		ginkgo.It("Create cilium cluster and all kube-system pods be running", func() {
 			clusterInstallYamlsPath := "e2e-install-cilium-cluster"