Skip to content

Commit

Permalink
Make KubernetesClientConfig values Optional
Browse files Browse the repository at this point in the history
  • Loading branch information
geoand committed Oct 22, 2019
1 parent 4dcc2ee commit e5c718d
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 33 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand All @@ -20,73 +21,73 @@ public class KubernetesClientBuildConfig {
* URL of the Kubernetes API server
*/
@ConfigItem
String masterUrl;
Optional<String> masterUrl;

/**
* Default namespace to use
*/
@ConfigItem
String namespace;
Optional<String> namespace;

/**
* CA certificate file
*/
@ConfigItem
String caCertFile;
Optional<String> caCertFile;

/**
* CA certificate data
*/
@ConfigItem
String caCertData;
Optional<String> caCertData;

/**
* Client certificate file
*/
@ConfigItem
String clientCertFile;
Optional<String> clientCertFile;

/**
* Client certificate data
*/
@ConfigItem
String clientCertData;
Optional<String> clientCertData;

/**
* Client key file
*/
@ConfigItem
String clientKeyFile;
Optional<String> clientKeyFile;

/**
* Client key data
*/
@ConfigItem
String clientKeyData;
Optional<String> clientKeyData;

/**
* Client key algorithm
*/
@ConfigItem
String clientKeyAlgo;
Optional<String> clientKeyAlgo;

/**
* Client key passphrase
*/
@ConfigItem
String clientKeyPassphrase;
Optional<String> clientKeyPassphrase;

/**
* Kubernetes auth username
*/
@ConfigItem
String username;
Optional<String> username;

/**
* Kubernetes auth password
*/
@ConfigItem
String password;
Optional<String> password;

/**
* Watch reconnect interval
Expand Down Expand Up @@ -123,29 +124,29 @@ public class KubernetesClientBuildConfig {
* HTTP proxy used to access the Kubernetes API server
*/
@ConfigItem
String httpProxy;
Optional<String> httpProxy;

/**
* HTTPS proxy used to access the Kubernetes API server
*/
@ConfigItem
String httpsProxy;
Optional<String> httpsProxy;

/**
* Proxy username
*/
@ConfigItem
String proxyUsername;
Optional<String> proxyUsername;

/**
* Proxy password
*/
@ConfigItem
String proxyPassword;
Optional<String> proxyPassword;

/**
* IP addresses or hosts to exclude from proxying
*/
@ConfigItem
List<String> noProxy;
List<Optional<String>> noProxy;
}
Original file line number Diff line number Diff line change
Expand Up @@ -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();

Expand Down

0 comments on commit e5c718d

Please sign in to comment.