From a333488eea35b398ed7d4209951d11ab8d94ec26 Mon Sep 17 00:00:00 2001 From: csviri Date: Tue, 4 Apr 2023 13:35:39 +0200 Subject: [PATCH 1/8] fix: no cleanup of config if not updated --- .../main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java b/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java index 6678589..0d39ee7 100644 --- a/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java +++ b/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java @@ -54,7 +54,9 @@ public void stop() { log.debug("Stopping"); kubeApiServerProcess.stopApiServer(); etcdProcess.stopEtcd(); - kubeConfig.restoreKubeConfig(); + if (config.isUpdateKubeConfig()) { + kubeConfig.restoreKubeConfig(); + } etcdProcess.cleanEtcdData(); log.debug("Stopped"); } From 93db71ae469988125f5849485f4daffd5b070622 Mon Sep 17 00:00:00 2001 From: csviri Date: Tue, 4 Apr 2023 14:58:15 +0200 Subject: [PATCH 2/8] experiment --- .../io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/test/java/io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java b/core/src/test/java/io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java index 3e99c50..dcd3ae4 100644 --- a/core/src/test/java/io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java +++ b/core/src/test/java/io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java @@ -53,7 +53,7 @@ void usingWildcardVersion() { kubeApi.stop(); } - @Test + // @Test void creatingClientFromConfigString() { var kubeApi = new KubeAPIServer(KubeAPIServerConfigBuilder.anAPIServerConfig() .withUpdateKubeConfig(false) From 728c43d5b3b00426e3efaa4e67eaed1cfad3747b Mon Sep 17 00:00:00 2001 From: csviri Date: Tue, 4 Apr 2023 15:18:29 +0200 Subject: [PATCH 3/8] wip --- .../jenvtest/process/KubeAPIServerProcess.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java b/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java index ff29546..548b6c4 100644 --- a/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java +++ b/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java @@ -125,7 +125,9 @@ public void waitUntilDefaultNamespaceCreated() { private boolean ready(HttpClient client, HttpRequest request) { try { var response = client.send(request, HttpResponse.BodyHandlers.ofString()); - log.trace("Ready Response message:{} code: {}", response.body(), response.statusCode()); + log.trace("Ready Response message:{} code: {} Api Server Port: {}", response.body(), + response.statusCode(), + apiServerPort); return response.statusCode() == 200; } catch (ConnectException e) { // still want to retry From e0d92c4980c2dcbe34a22aa8e6ad5fac986eec63 Mon Sep 17 00:00:00 2001 From: csviri Date: Tue, 4 Apr 2023 15:25:33 +0200 Subject: [PATCH 4/8] debug --- .../javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java b/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java index 548b6c4..21392f7 100644 --- a/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java +++ b/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java @@ -125,7 +125,7 @@ public void waitUntilDefaultNamespaceCreated() { private boolean ready(HttpClient client, HttpRequest request) { try { var response = client.send(request, HttpResponse.BodyHandlers.ofString()); - log.trace("Ready Response message:{} code: {} Api Server Port: {}", response.body(), + log.debug("Ready Response message:{} code: {} Api Server Port: {}", response.body(), response.statusCode(), apiServerPort); return response.statusCode() == 200; From 818d79bf9356bc68b48194be7d44bbf2b08cb8f6 Mon Sep 17 00:00:00 2001 From: csviri Date: Tue, 4 Apr 2023 15:41:46 +0200 Subject: [PATCH 5/8] wipo --- .../main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java b/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java index 0d39ee7..6678589 100644 --- a/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java +++ b/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java @@ -54,9 +54,7 @@ public void stop() { log.debug("Stopping"); kubeApiServerProcess.stopApiServer(); etcdProcess.stopEtcd(); - if (config.isUpdateKubeConfig()) { - kubeConfig.restoreKubeConfig(); - } + kubeConfig.restoreKubeConfig(); etcdProcess.cleanEtcdData(); log.debug("Stopped"); } From d56cba3784d21db6fd8e966e09cf58e884e8e754 Mon Sep 17 00:00:00 2001 From: csviri Date: Tue, 4 Apr 2023 15:59:16 +0200 Subject: [PATCH 6/8] wip --- .../main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java b/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java index 6678589..0d39ee7 100644 --- a/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java +++ b/core/src/main/java/io/javaoperatorsdk/jenvtest/KubeAPIServer.java @@ -54,7 +54,9 @@ public void stop() { log.debug("Stopping"); kubeApiServerProcess.stopApiServer(); etcdProcess.stopEtcd(); - kubeConfig.restoreKubeConfig(); + if (config.isUpdateKubeConfig()) { + kubeConfig.restoreKubeConfig(); + } etcdProcess.cleanEtcdData(); log.debug("Stopped"); } From ba732d0cbee13bdbe9b3b76b8ee73ca1b2879a76 Mon Sep 17 00:00:00 2001 From: csviri Date: Thu, 6 Apr 2023 18:13:35 +0200 Subject: [PATCH 7/8] wip --- .../io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/test/java/io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java b/core/src/test/java/io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java index dcd3ae4..3e99c50 100644 --- a/core/src/test/java/io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java +++ b/core/src/test/java/io/javaoperatorsdk/jenvtest/sample/KubeApiServerTest.java @@ -53,7 +53,7 @@ void usingWildcardVersion() { kubeApi.stop(); } - // @Test + @Test void creatingClientFromConfigString() { var kubeApi = new KubeAPIServer(KubeAPIServerConfigBuilder.anAPIServerConfig() .withUpdateKubeConfig(false) From 0c07b9f74a377784f8e23cd68a7010b4826147b8 Mon Sep 17 00:00:00 2001 From: csviri Date: Mon, 10 Apr 2023 12:17:39 +0200 Subject: [PATCH 8/8] wait for process exit --- .../io/javaoperatorsdk/jenvtest/process/EtcdProcess.java | 7 ++++++- .../jenvtest/process/KubeAPIServerProcess.java | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/io/javaoperatorsdk/jenvtest/process/EtcdProcess.java b/core/src/main/java/io/javaoperatorsdk/jenvtest/process/EtcdProcess.java index 63e04ef..9f35528 100644 --- a/core/src/main/java/io/javaoperatorsdk/jenvtest/process/EtcdProcess.java +++ b/core/src/main/java/io/javaoperatorsdk/jenvtest/process/EtcdProcess.java @@ -88,7 +88,12 @@ public void stopEtcd() { } stopped = true; if (etcdProcess != null) { - etcdProcess.destroyForcibly(); + try { + etcdProcess.destroyForcibly(); + etcdProcess.waitFor(); + } catch (InterruptedException e) { + throw new JenvtestException(e); + } } log.debug("etcd stopped"); } diff --git a/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java b/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java index 21392f7..52f2244 100644 --- a/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java +++ b/core/src/main/java/io/javaoperatorsdk/jenvtest/process/KubeAPIServerProcess.java @@ -210,7 +210,12 @@ public void stopApiServer() { } stopped = true; if (apiServerProcess != null) { - apiServerProcess.destroyForcibly(); + try { + apiServerProcess.destroyForcibly(); + apiServerProcess.waitFor(); + } catch (InterruptedException e) { + throw new JenvtestException(e); + } } log.debug("API Server stopped"); }