summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlyndon <huzhengyang@gridsum.com>2022-02-09 17:17:33 +0800
committerfisherxu <xufei40@huawei.com>2022-02-10 20:09:23 +0800
commitd10b9b78299f2bdd2de1fb449698d8f7837581d0 (patch)
treec7f96ade29ecf70b481c758001e2a5ea65c221ca
parentMerge pull request #3577 from vincentgoat/automated-cherry-pick-of-#3570-upst... (diff)
downloadkubeedge-d10b9b78299f2bdd2de1fb449698d8f7837581d0.tar.gz
filter pod in edged modify the helper.go, add NodeName for pod simplified return value
Signed-off-by: fisherxu <xufei40@huawei.com>
-rw-r--r--edge/pkg/edged/edged.go43
-rw-r--r--edge/test/integration/utils/helpers/helpers.go2
2 files changed, 28 insertions, 17 deletions
diff --git a/edge/pkg/edged/edged.go b/edge/pkg/edged/edged.go
index 54568714e..c3f0d2978 100644
--- a/edge/pkg/edged/edged.go
+++ b/edge/pkg/edged/edged.go
@@ -1272,16 +1272,19 @@ func (e *edged) handlePod(op string, content []byte) (err error) {
return err
}
- switch op {
- case model.InsertOperation:
- e.addPod(&pod)
- case model.UpdateOperation:
- e.updatePod(&pod)
- case model.DeleteOperation:
- if delPod, ok := e.podManager.GetPodByName(pod.Namespace, pod.Name); ok {
- e.deletePod(delPod)
+ if filterPodByNodeName(&pod, e.nodeName) {
+ switch op {
+ case model.InsertOperation:
+ e.addPod(&pod)
+ case model.UpdateOperation:
+ e.updatePod(&pod)
+ case model.DeleteOperation:
+ if delPod, ok := e.podManager.GetPodByName(pod.Namespace, pod.Name); ok {
+ e.deletePod(delPod)
+ }
}
}
+
return nil
}
@@ -1298,10 +1301,12 @@ func (e *edged) handlePodListFromMetaManager(content []byte) (err error) {
if err != nil {
return err
}
- e.addPod(&pod)
- if err = e.updatePodStatus(&pod); err != nil {
- klog.Errorf("handlePodListFromMetaManager: update pod %s status error", pod.Name)
- return err
+ if filterPodByNodeName(&pod, e.nodeName) {
+ e.addPod(&pod)
+ if err = e.updatePodStatus(&pod); err != nil {
+ klog.Errorf("handlePodListFromMetaManager: update pod %s status error", pod.Name)
+ return err
+ }
}
}
@@ -1309,13 +1314,15 @@ func (e *edged) handlePodListFromMetaManager(content []byte) (err error) {
}
func (e *edged) handlePodListFromEdgeController(content []byte) (err error) {
- var lists []v1.Pod
- if err := json.Unmarshal(content, &lists); err != nil {
+ var podLists []v1.Pod
+ if err := json.Unmarshal(content, &podLists); err != nil {
return err
}
- for _, list := range lists {
- e.addPod(&list)
+ for _, pod := range podLists {
+ if filterPodByNodeName(&pod, e.nodeName) {
+ e.addPod(&pod)
+ }
}
return nil
@@ -1526,3 +1533,7 @@ func convertStrToIP(s string) []net.IP {
}
return ips
}
+
+func filterPodByNodeName(pod *v1.Pod, nodeName string) bool {
+ return pod.Spec.NodeName == nodeName
+}
diff --git a/edge/test/integration/utils/helpers/helpers.go b/edge/test/integration/utils/helpers/helpers.go
index 14a670f20..0cd17c995 100644
--- a/edge/test/integration/utils/helpers/helpers.go
+++ b/edge/test/integration/utils/helpers/helpers.go
@@ -287,7 +287,7 @@ func HandleAddAndDeletePods(operation string, edgedpoint string, UID string, con
payload := &v1.Pod{
TypeMeta: metav1.TypeMeta{Kind: "Job", APIVersion: "batch/v1"},
ObjectMeta: metav1.ObjectMeta{Name: UID, Namespace: metav1.NamespaceDefault, UID: types.UID(UID)},
- Spec: v1.PodSpec{RestartPolicy: restartPolicy, Containers: container},
+ Spec: v1.PodSpec{RestartPolicy: restartPolicy, Containers: container, NodeName: "edge-node"},
}
respbytes, err := json.Marshal(payload)
if err != nil {