⚗️ Build client once

This commit is contained in:
Andreas Dinauer 2025-06-06 20:32:31 +02:00
parent c634ac1fa0
commit 3b66dc5f22

View File

@ -3,6 +3,7 @@ package dev.dinauer.utils;
import io.fabric8.kubernetes.client.Config; import io.fabric8.kubernetes.client.Config;
import io.fabric8.kubernetes.client.KubernetesClient; import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.KubernetesClientBuilder; import io.fabric8.kubernetes.client.KubernetesClientBuilder;
import jakarta.annotation.PostConstruct;
import jakarta.enterprise.context.ApplicationScoped; import jakarta.enterprise.context.ApplicationScoped;
import org.eclipse.microprofile.config.inject.ConfigProperty; import org.eclipse.microprofile.config.inject.ConfigProperty;
@ -14,8 +15,16 @@ public class ClientProvider
@ConfigProperty(name = "dev.dinauer.kobooboo.kubeconfigs.dir") @ConfigProperty(name = "dev.dinauer.kobooboo.kubeconfigs.dir")
String configFilePath; String configFilePath;
private KubernetesClient client;
@PostConstruct
void init()
{
client = new KubernetesClientBuilder().withConfig(Config.fromKubeconfig(new File(configFilePath))).build();
}
public KubernetesClient getClient() public KubernetesClient getClient()
{ {
return new KubernetesClientBuilder().withConfig(Config.fromKubeconfig(new File(configFilePath))).build(); return client;
} }
} }