From 989a3f6af14ae784b79deccc9e3ce5bcf66756e7 Mon Sep 17 00:00:00 2001 From: Jian Zhu Date: Mon, 8 Jul 2024 09:57:50 +0800 Subject: [PATCH] Bump addon framework to the latest version (#552) Signed-off-by: zhujian --- go.mod | 2 +- go.sum | 4 ++-- vendor/modules.txt | 2 +- .../agentdeploy/healthcheck_sync.go | 20 +++++++++++++++---- .../addon-framework/pkg/utils/probe_helper.go | 8 ++++++++ 5 files changed, 28 insertions(+), 8 deletions(-) diff --git a/go.mod b/go.mod index 09042ed92..bef320f1d 100644 --- a/go.mod +++ b/go.mod @@ -34,7 +34,7 @@ require ( k8s.io/klog/v2 v2.120.1 k8s.io/kube-aggregator v0.29.3 k8s.io/utils v0.0.0-20240310230437-4693a0247e57 - open-cluster-management.io/addon-framework v0.10.0 + open-cluster-management.io/addon-framework v0.10.1-0.20240703140803-5b2338bebb95 open-cluster-management.io/api v0.14.0 open-cluster-management.io/sdk-go v0.14.0 sigs.k8s.io/controller-runtime v0.17.3 diff --git a/go.sum b/go.sum index 22f04b6d3..f4ac05ae2 100644 --- a/go.sum +++ b/go.sum @@ -465,8 +465,8 @@ k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 h1:aVUu9fTY98ivBPKR9Y5w/A k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00/go.mod h1:AsvuZPBlUDVuCdzJ87iajxtXuR9oktsTctW/R9wwouA= k8s.io/utils v0.0.0-20240310230437-4693a0247e57 h1:gbqbevonBh57eILzModw6mrkbwM0gQBEuevE/AaBsHY= k8s.io/utils v0.0.0-20240310230437-4693a0247e57/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= -open-cluster-management.io/addon-framework v0.10.0 h1:bwI1XujcbkDoqlCFG1mKuwXNzoED4im/9/9BVu4xpRo= -open-cluster-management.io/addon-framework v0.10.0/go.mod h1:HayKCznnlyW+0dUJQGj5sNR6i3tvylSySD3YnvZkBtY= +open-cluster-management.io/addon-framework v0.10.1-0.20240703140803-5b2338bebb95 h1:bq/xkJPLzuu40tkxC7pbhi+IAraLX2z7O/GHbvJwMkA= +open-cluster-management.io/addon-framework v0.10.1-0.20240703140803-5b2338bebb95/go.mod h1:HayKCznnlyW+0dUJQGj5sNR6i3tvylSySD3YnvZkBtY= open-cluster-management.io/api v0.14.0 h1:yjhnNeO/QudiIoEi0i/yUYmP3iElAfUgtj4pHMV+4uM= open-cluster-management.io/api v0.14.0/go.mod h1:ltijKJhDifrPH0csvCUmFt5lzaERv+BBfh6X3l83rT0= open-cluster-management.io/sdk-go v0.14.0 h1:wdnk9/qANruUKorggrMee7lavwvdP5Toks8WA6nVHlo= diff --git a/vendor/modules.txt b/vendor/modules.txt index 906b7a5b4..52990f63b 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1500,7 +1500,7 @@ k8s.io/utils/pointer k8s.io/utils/ptr k8s.io/utils/strings/slices k8s.io/utils/trace -# open-cluster-management.io/addon-framework v0.10.0 +# open-cluster-management.io/addon-framework v0.10.1-0.20240703140803-5b2338bebb95 ## explicit; go 1.21 open-cluster-management.io/addon-framework/pkg/addonfactory open-cluster-management.io/addon-framework/pkg/addonmanager diff --git a/vendor/open-cluster-management.io/addon-framework/pkg/addonmanager/controllers/agentdeploy/healthcheck_sync.go b/vendor/open-cluster-management.io/addon-framework/pkg/addonmanager/controllers/agentdeploy/healthcheck_sync.go index 992646e3f..e1d01f2c5 100644 --- a/vendor/open-cluster-management.io/addon-framework/pkg/addonmanager/controllers/agentdeploy/healthcheck_sync.go +++ b/vendor/open-cluster-management.io/addon-framework/pkg/addonmanager/controllers/agentdeploy/healthcheck_sync.go @@ -5,6 +5,7 @@ import ( "fmt" "strings" + appsv1 "k8s.io/api/apps/v1" "k8s.io/apimachinery/pkg/api/meta" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" addonapiv1alpha1 "open-cluster-management.io/api/addon/v1alpha1" @@ -178,10 +179,12 @@ func (s *healthCheckSyncer) probeAddonStatusByWorks( // mark condition to unknown if result == nil { meta.SetStatusCondition(&addon.Status.Conditions, metav1.Condition{ - Type: addonapiv1alpha1.ManagedClusterAddOnConditionAvailable, - Status: metav1.ConditionUnknown, - Reason: addonapiv1alpha1.AddonAvailableReasonNoProbeResult, - Message: "Probe results are not returned", + Type: addonapiv1alpha1.ManagedClusterAddOnConditionAvailable, + Status: metav1.ConditionUnknown, + Reason: addonapiv1alpha1.AddonAvailableReasonNoProbeResult, + Message: fmt.Sprintf("Probe results are not returned for %s/%s: %s/%s", + field.ResourceIdentifier.Group, field.ResourceIdentifier.Resource, + field.ResourceIdentifier.Namespace, field.ResourceIdentifier.Name), }) return nil } @@ -271,8 +274,17 @@ func (s *healthCheckSyncer) analyzeWorkloadsWorkProber( workloads := utils.FilterWorkloads(manifests) for _, workload := range workloads { + // Not probe the deployment with zero replicas + if workload.GroupResource.Group == appsv1.GroupName && + workload.GroupResource.Resource == "deployments" && + workload.DeploymentSpec != nil && + workload.DeploymentSpec.Replicas == 0 { + continue + } + manifestConfig := utils.WellKnowManifestConfig(workload.Group, workload.Resource, workload.Namespace, workload.Name) + probeFields = append(probeFields, agent.ProbeField{ ResourceIdentifier: manifestConfig.ResourceIdentifier, ProbeRules: manifestConfig.FeedbackRules, diff --git a/vendor/open-cluster-management.io/addon-framework/pkg/utils/probe_helper.go b/vendor/open-cluster-management.io/addon-framework/pkg/utils/probe_helper.go index b43c6152c..0d782a13a 100644 --- a/vendor/open-cluster-management.io/addon-framework/pkg/utils/probe_helper.go +++ b/vendor/open-cluster-management.io/addon-framework/pkg/utils/probe_helper.go @@ -134,6 +134,11 @@ func FilterDeployments(objects []runtime.Object) []*appsv1.Deployment { type WorkloadMetadata struct { schema.GroupResource types.NamespacedName + DeploymentSpec *DeploymentSpec +} + +type DeploymentSpec struct { + Replicas int32 } func FilterWorkloads(objects []runtime.Object) []WorkloadMetadata { @@ -150,6 +155,9 @@ func FilterWorkloads(objects []runtime.Object) []WorkloadMetadata { Namespace: deployment.Namespace, Name: deployment.Name, }, + DeploymentSpec: &DeploymentSpec{ + Replicas: *deployment.Spec.Replicas, + }, }) } daemonset, err := ConvertToDaemonSet(obj)