From 674ca25d1f821faca2d25efe7253acbcdf65692f Mon Sep 17 00:00:00 2001 From: Max Shaposhnik Date: Wed, 24 Feb 2021 10:46:24 +0200 Subject: [PATCH] Fix pod watching manner to prevent events from other pods to cancel the waiting --- .../kubernetes/namespace/KubernetesDeployments.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/infrastructures/kubernetes/src/main/java/org/eclipse/che/workspace/infrastructure/kubernetes/namespace/KubernetesDeployments.java b/infrastructures/kubernetes/src/main/java/org/eclipse/che/workspace/infrastructure/kubernetes/namespace/KubernetesDeployments.java index 6b3688917f..58eefa2bbf 100644 --- a/infrastructures/kubernetes/src/main/java/org/eclipse/che/workspace/infrastructure/kubernetes/namespace/KubernetesDeployments.java +++ b/infrastructures/kubernetes/src/main/java/org/eclipse/che/workspace/infrastructure/kubernetes/namespace/KubernetesDeployments.java @@ -197,6 +197,9 @@ public class KubernetesDeployments { .create(workspaceId) .pods() .inNamespace(namespace) + .withLabels( + Map.of( + CHE_WORKSPACE_ID_LABEL, workspaceId, CHE_DEPLOYMENT_NAME_LABEL, deploymentName)) .watch(new CreateWatcher(createFuture, workspaceId, deploymentName)); try { clientFactory @@ -1096,9 +1099,7 @@ public class KubernetesDeployments { @Override public void eventReceived(Action action, Pod resource) { - Map labels = resource.getMetadata().getLabels(); - if (workspaceId.equals(labels.get(CHE_WORKSPACE_ID_LABEL)) - && deploymentName.equals(labels.get(CHE_DEPLOYMENT_NAME_LABEL))) { + if (action == Action.ADDED) { future.complete(resource); } }