From c7c9cd4c17342a563ff0b5613eeccf9ecc39bb9c Mon Sep 17 00:00:00 2001 From: Anmol1696 Date: Thu, 18 Jul 2024 15:53:29 +0530 Subject: [PATCH 1/3] add pre check to check connection with k8s cluster --- clients/js/packages/client/src/client.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/clients/js/packages/client/src/client.ts b/clients/js/packages/client/src/client.ts index 0d7186f4..b7d673c4 100644 --- a/clients/js/packages/client/src/client.ts +++ b/clients/js/packages/client/src/client.ts @@ -297,6 +297,7 @@ export class StarshipClient implements StarshipClientI { } public async start(): Promise { + this.checkConnection(); this.setup(); this.deploy(); await this.waitForPods(); // Ensure waitForPods completes before starting port forwarding @@ -384,6 +385,18 @@ export class StarshipClient implements StarshipClientI { ]); } + public checkConnection(): void { + const result = this.exec(['kubectl', 'get', 'nodes'], false, true); + + if (result.code !== 0) { + this.log(chalk.red('Error: Unable to connect to the Kubernetes cluster.')); + this.log(chalk.red('Please ensure that the Kubernetes cluster is configured correctly.')); + this.exit(1); + } else { + this.log(chalk.green('Kubernetes cluster connection is working correctly.')); + } + } + private getPodNames(): string[] { const result = this.exec([ 'kubectl', From 07331b3603077b56c7600ed8312210b85cf3a7a2 Mon Sep 17 00:00:00 2001 From: Anmol1696 Date: Thu, 18 Jul 2024 15:55:13 +0530 Subject: [PATCH 2/3] add checkConnection command to setup --- clients/js/packages/client/src/client.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/clients/js/packages/client/src/client.ts b/clients/js/packages/client/src/client.ts index b7d673c4..5116ffbc 100644 --- a/clients/js/packages/client/src/client.ts +++ b/clients/js/packages/client/src/client.ts @@ -189,6 +189,7 @@ export class StarshipClient implements StarshipClientI { } public setup(): void { + this.checkConnection(); this.setupHelm(); } From 9a1ca0572ddd67b4303f63b591008d0d8f15f6d4 Mon Sep 17 00:00:00 2001 From: Anmol1696 Date: Thu, 18 Jul 2024 16:12:07 +0530 Subject: [PATCH 3/3] remove checkConnection from setup, only use it in start command --- clients/js/packages/client/src/client.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/clients/js/packages/client/src/client.ts b/clients/js/packages/client/src/client.ts index 5116ffbc..b7d673c4 100644 --- a/clients/js/packages/client/src/client.ts +++ b/clients/js/packages/client/src/client.ts @@ -189,7 +189,6 @@ export class StarshipClient implements StarshipClientI { } public setup(): void { - this.checkConnection(); this.setupHelm(); }