diff --git a/extensions/kubernetes-client/runtime/src/main/java/io/quarkus/kubernetes/client/runtime/KubernetesClientBuildConfig.java b/extensions/kubernetes-client/runtime/src/main/java/io/quarkus/kubernetes/client/runtime/KubernetesClientBuildConfig.java index 1ceeac6447f6b1..bc97f1f9368350 100644 --- a/extensions/kubernetes-client/runtime/src/main/java/io/quarkus/kubernetes/client/runtime/KubernetesClientBuildConfig.java +++ b/extensions/kubernetes-client/runtime/src/main/java/io/quarkus/kubernetes/client/runtime/KubernetesClientBuildConfig.java @@ -2,6 +2,7 @@ import java.time.Duration; import java.util.List; +import java.util.Optional; import io.quarkus.runtime.annotations.ConfigItem; import io.quarkus.runtime.annotations.ConfigPhase; @@ -20,73 +21,73 @@ public class KubernetesClientBuildConfig { * URL of the Kubernetes API server */ @ConfigItem - String masterUrl; + Optional masterUrl; /** * Default namespace to use */ @ConfigItem - String namespace; + Optional namespace; /** * CA certificate file */ @ConfigItem - String caCertFile; + Optional caCertFile; /** * CA certificate data */ @ConfigItem - String caCertData; + Optional caCertData; /** * Client certificate file */ @ConfigItem - String clientCertFile; + Optional clientCertFile; /** * Client certificate data */ @ConfigItem - String clientCertData; + Optional clientCertData; /** * Client key file */ @ConfigItem - String clientKeyFile; + Optional clientKeyFile; /** * Client key data */ @ConfigItem - String clientKeyData; + Optional clientKeyData; /** * Client key algorithm */ @ConfigItem - String clientKeyAlgo; + Optional clientKeyAlgo; /** * Client key passphrase */ @ConfigItem - String clientKeyPassphrase; + Optional clientKeyPassphrase; /** * Kubernetes auth username */ @ConfigItem - String username; + Optional username; /** * Kubernetes auth password */ @ConfigItem - String password; + Optional password; /** * Watch reconnect interval @@ -123,29 +124,29 @@ public class KubernetesClientBuildConfig { * HTTP proxy used to access the Kubernetes API server */ @ConfigItem - String httpProxy; + Optional httpProxy; /** * HTTPS proxy used to access the Kubernetes API server */ @ConfigItem - String httpsProxy; + Optional httpsProxy; /** * Proxy username */ @ConfigItem - String proxyUsername; + Optional proxyUsername; /** * Proxy password */ @ConfigItem - String proxyPassword; + Optional proxyPassword; /** * IP addresses or hosts to exclude from proxying */ @ConfigItem - List noProxy; + List> noProxy; } diff --git a/extensions/kubernetes-client/runtime/src/main/java/io/quarkus/kubernetes/client/runtime/KubernetesClientProducer.java b/extensions/kubernetes-client/runtime/src/main/java/io/quarkus/kubernetes/client/runtime/KubernetesClientProducer.java index 414444bc6e0d12..5ecb3798fc0fbb 100644 --- a/extensions/kubernetes-client/runtime/src/main/java/io/quarkus/kubernetes/client/runtime/KubernetesClientProducer.java +++ b/extensions/kubernetes-client/runtime/src/main/java/io/quarkus/kubernetes/client/runtime/KubernetesClientProducer.java @@ -27,22 +27,22 @@ public Config config() { .withConnectionTimeout((int) buildConfig.connectionTimeout.toMillis()) .withRequestTimeout((int) buildConfig.requestTimeout.toMillis()) .withRollingTimeout(buildConfig.rollingTimeout.toMillis()) - .withMasterUrl(or(buildConfig.masterUrl, base.getMasterUrl())) - .withNamespace(or(buildConfig.namespace, base.getNamespace())) - .withUsername(or(buildConfig.username, base.getUsername())) - .withPassword(or(buildConfig.password, base.getPassword())) - .withCaCertFile(or(buildConfig.caCertFile, base.getCaCertFile())) - .withCaCertData(or(buildConfig.caCertData, base.getCaCertData())) - .withClientCertFile(or(buildConfig.clientCertFile, base.getCaCertFile())) - .withClientCertData(or(buildConfig.clientCertData, base.getCaCertData())) - .withClientKeyFile(or(buildConfig.clientKeyFile, base.getClientKeyFile())) - .withClientKeyData(or(buildConfig.clientKeyData, base.getClientKeyData())) - .withClientKeyPassphrase(or(buildConfig.clientKeyPassphrase, base.getClientKeyPassphrase())) - .withClientKeyAlgo(or(buildConfig.clientKeyAlgo, base.getClientKeyAlgo())) - .withHttpProxy(or(buildConfig.httpProxy, base.getHttpProxy())) - .withHttpsProxy(or(buildConfig.httpsProxy, base.getHttpsProxy())) - .withProxyUsername(or(buildConfig.proxyUsername, base.getProxyUsername())) - .withProxyPassword(or(buildConfig.proxyPassword, base.getProxyPassword())) + .withMasterUrl(buildConfig.masterUrl.orElse(base.getMasterUrl())) + .withNamespace(buildConfig.namespace.orElse(base.getNamespace())) + .withUsername(buildConfig.username.orElse(base.getUsername())) + .withPassword(buildConfig.password.orElse(base.getPassword())) + .withCaCertFile(buildConfig.caCertFile.orElse(base.getCaCertFile())) + .withCaCertData(buildConfig.caCertData.orElse(base.getCaCertData())) + .withClientCertFile(buildConfig.clientCertFile.orElse(base.getCaCertFile())) + .withClientCertData(buildConfig.clientCertData.orElse(base.getCaCertData())) + .withClientKeyFile(buildConfig.clientKeyFile.orElse(base.getClientKeyFile())) + .withClientKeyData(buildConfig.clientKeyData.orElse(base.getClientKeyData())) + .withClientKeyPassphrase(buildConfig.clientKeyPassphrase.orElse(base.getClientKeyPassphrase())) + .withClientKeyAlgo(buildConfig.clientKeyAlgo.orElse(base.getClientKeyAlgo())) + .withHttpProxy(buildConfig.httpProxy.orElse(base.getHttpProxy())) + .withHttpsProxy(buildConfig.httpsProxy.orElse(base.getHttpsProxy())) + .withProxyUsername(buildConfig.proxyUsername.orElse(base.getProxyUsername())) + .withProxyPassword(buildConfig.proxyPassword.orElse(base.getProxyPassword())) .withNoProxy(buildConfig.noProxy.size() > 0 ? buildConfig.noProxy.toArray(new String[0]) : base.getNoProxy()) .build();