Fix: Applied Resources Statistics Error (#2398)

* Fix: isSameObjReference

* Fix: healthScope
This commit is contained in:
Jian.Li
2021-09-30 14:24:09 +08:00
committed by GitHub
parent ab2d2750f2
commit a865c85d05
2 changed files with 21 additions and 8 deletions
@@ -102,6 +102,8 @@ func (h *AppHandler) addAppliedResource(refs ...common.ClusterObjectReference) {
func isSameObjReference(ref1, ref2 common.ClusterObjectReference) bool {
return ref1.Cluster == ref2.Cluster &&
ref1.Namespace == ref2.Namespace &&
ref1.APIVersion == ref2.APIVersion &&
ref1.Kind == ref2.Kind &&
ref1.Name == ref2.Name
}
@@ -603,14 +603,25 @@ func (r *Reconciler) createWorkloadRefs(ctx context.Context, appRef v1alpha2.App
}
if application.Status.AppliedResources != nil {
workloads := application.Status.AppliedResources
for _, wl := range workloads {
if wl.Creator == commonapis.WorkflowResourceCreator {
wlRefs = append(wlRefs, WorkloadReference{
ObjectReference: wl.ObjectReference,
clusterName: wl.Cluster,
envName: decisionsMap[wl.Cluster],
})
resources := application.Status.AppliedResources
for _, rs := range resources {
if rs.Creator == commonapis.WorkflowResourceCreator {
o := new(unstructured.Unstructured)
o.SetKind(rs.Kind)
o.SetAPIVersion(rs.APIVersion)
if err := r.client.Get(multicluster.ContextWithClusterName(ctx, rs.Cluster), client.ObjectKey{
Name: rs.Name,
Namespace: rs.Namespace,
}, o); err != nil {
continue
}
if labels := o.GetLabels(); labels != nil && labels[oam.WorkloadTypeLabel] != "" {
wlRefs = append(wlRefs, WorkloadReference{
ObjectReference: rs.ObjectReference,
clusterName: rs.Cluster,
envName: decisionsMap[rs.Cluster],
})
}
}
}
}