From cf0f0cc44374541efe1c75deffce288e0ba69ab0 Mon Sep 17 00:00:00 2001 From: csviri Date: Thu, 24 Mar 2022 08:18:24 +0100 Subject: [PATCH 1/2] fix: e2e test crd ready wait --- .../javaoperatorsdk/operator/junit/E2EOperatorExtension.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/E2EOperatorExtension.java b/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/E2EOperatorExtension.java index 55e6cc5c30..2a5d2f49fe 100644 --- a/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/E2EOperatorExtension.java +++ b/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/E2EOperatorExtension.java @@ -64,8 +64,11 @@ protected void before(ExtensionContext context) { try (InputStream is = new FileInputStream(crdFile)) { final var crd = kubernetesClient.load(is); crd.createOrReplace(); - crd.waitUntilReady(2, TimeUnit.SECONDS); + Thread.sleep(2000); // readiness is not applicable for CRD, just wait a little LOGGER.debug("Applied CRD with name: {}", crd.get().get(0).getMetadata().getName()); + } catch (InterruptedException ex) { + LOGGER.error("Interrupted.", ex); + Thread.currentThread().interrupt(); } catch (Exception ex) { throw new IllegalStateException("Cannot apply CRD yaml: " + crdFile.getAbsolutePath(), ex); } From 61a4808ac1938968376f9347c85a50a1bb16aef2 Mon Sep 17 00:00:00 2001 From: csviri Date: Thu, 24 Mar 2022 08:21:07 +0100 Subject: [PATCH 2/2] fix: constant value --- .../operator/junit/AbstractOperatorExtension.java | 1 + .../io/javaoperatorsdk/operator/junit/E2EOperatorExtension.java | 2 +- .../io/javaoperatorsdk/operator/junit/OperatorExtension.java | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/AbstractOperatorExtension.java b/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/AbstractOperatorExtension.java index 2c2a14b14d..7164dd42af 100644 --- a/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/AbstractOperatorExtension.java +++ b/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/AbstractOperatorExtension.java @@ -32,6 +32,7 @@ public abstract class AbstractOperatorExtension implements HasKubernetesClient, AfterEachCallback { private static final Logger LOGGER = LoggerFactory.getLogger(AbstractOperatorExtension.class); + public static final int CRD_READY_WAIT = 2000; private final KubernetesClient kubernetesClient; protected final ConfigurationService configurationService; diff --git a/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/E2EOperatorExtension.java b/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/E2EOperatorExtension.java index 2a5d2f49fe..46d00b88c0 100644 --- a/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/E2EOperatorExtension.java +++ b/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/E2EOperatorExtension.java @@ -64,7 +64,7 @@ protected void before(ExtensionContext context) { try (InputStream is = new FileInputStream(crdFile)) { final var crd = kubernetesClient.load(is); crd.createOrReplace(); - Thread.sleep(2000); // readiness is not applicable for CRD, just wait a little + Thread.sleep(CRD_READY_WAIT); // readiness is not applicable for CRD, just wait a little LOGGER.debug("Applied CRD with name: {}", crd.get().get(0).getMetadata().getName()); } catch (InterruptedException ex) { LOGGER.error("Interrupted.", ex); diff --git a/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/OperatorExtension.java b/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/OperatorExtension.java index 8f95bb6ed7..7602d40295 100644 --- a/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/OperatorExtension.java +++ b/operator-framework-junit5/src/main/java/io/javaoperatorsdk/operator/junit/OperatorExtension.java @@ -120,7 +120,7 @@ protected void before(ExtensionContext context) { try (InputStream is = getClass().getResourceAsStream(path)) { final var crd = kubernetesClient.load(is); crd.createOrReplace(); - Thread.sleep(2000); // readiness is not applicable for CRD, just wait a little + Thread.sleep(CRD_READY_WAIT); // readiness is not applicable for CRD, just wait a little LOGGER.debug("Applied CRD with name: {}", config.getResourceTypeName()); } catch (InterruptedException ex) { LOGGER.error("Interrupted.", ex);