From 975bd96f187250eec45d6b733366091740e8e782 Mon Sep 17 00:00:00 2001 From: Ryan Baxter <524254+ryanjbaxter@users.noreply.github.com> Date: Mon, 6 Nov 2023 09:30:23 -0500 Subject: [PATCH] Adding some additional logging --- .../tests/commons/native_client/Util.java | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons/native_client/Util.java b/spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons/native_client/Util.java index 55e39c70..e9d3dceb 100644 --- a/spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons/native_client/Util.java +++ b/spring-cloud-kubernetes-test-support/src/main/java/org/springframework/cloud/kubernetes/integration/tests/commons/native_client/Util.java @@ -41,6 +41,7 @@ import io.kubernetes.client.openapi.models.V1ClusterRole; import io.kubernetes.client.openapi.models.V1ClusterRoleBinding; import io.kubernetes.client.openapi.models.V1ConfigMap; import io.kubernetes.client.openapi.models.V1Deployment; +import io.kubernetes.client.openapi.models.V1DeploymentCondition; import io.kubernetes.client.openapi.models.V1DeploymentList; import io.kubernetes.client.openapi.models.V1Ingress; import io.kubernetes.client.openapi.models.V1LoadBalancerIngress; @@ -625,10 +626,27 @@ public final class Util { fail("No deployments with the name " + deploymentName); } V1Deployment deployment = deployments.getItems().get(0); - Integer availableReplicas = deployment.getStatus().getAvailableReplicas(); - LOG.info("Available replicas for " + deploymentName + ": " - + (availableReplicas == null ? 0 : availableReplicas)); - return availableReplicas != null && availableReplicas >= 1; + if (deployment.getStatus() != null) { + Integer availableReplicas = deployment.getStatus().getAvailableReplicas(); + logDeploymentConditions(deployment.getStatus().getConditions()); + LOG.info("Available replicas for " + deploymentName + ": " + + (availableReplicas == null ? 0 : availableReplicas)); + return availableReplicas != null && availableReplicas >= 1; + } + else { + return false; + } + } + + private void logDeploymentConditions(List conditions) { + if (conditions != null) { + for (V1DeploymentCondition condition : conditions) { + LOG.info("Deployment Condition Type: " + condition.getType()); + LOG.info("Deployment Condition Status: " + condition.getStatus()); + LOG.info("Deployment Condition Message: " + condition.getMessage()); + LOG.info("Deployment Condition Reason: " + condition.getReason()); + } + } } private static void waitForDeploymentAfterPatch(String deploymentName, String namespace,