src/main/java/org/embulk/executor/remoteserver/Launcher.java in embulk-executor-remoteserver-0.2.1 vs src/main/java/org/embulk/executor/remoteserver/Launcher.java in embulk-executor-remoteserver-0.3.0
- old
+ new
@@ -10,16 +10,42 @@
public class Launcher {
public static void main(String[] args) throws IOException {
Map<String, String> envVars = System.getenv();
String host = envVars.getOrDefault("BIND_ADDRESS", "0.0.0.0");
int port = Integer.parseInt(envVars.getOrDefault("PORT", "30001"));
- int numOfWorkers = Integer.parseInt(envVars.getOrDefault("NUM_OF_WORKERS", "1"));
- Level logLevel = Level.toLevel(envVars.getOrDefault("LOG_LEVEL", "info"));
- configureLogLevel(logLevel);
- EmbulkServer.start(host, port, numOfWorkers);
+ int numOfWorkers = Integer.parseInt(envVars.getOrDefault("NUM_OF_WORKERS", "5"));
+ TLSConfig tlsConfig = createTLSConfig(envVars);
+ configureLogLevel(envVars);
+
+ EmbulkServer.start(host, port, numOfWorkers, tlsConfig);
}
- private static void configureLogLevel(Level logLevel) {
+ private static TLSConfig createTLSConfig(Map<String, String> envVars) {
+ if (!"true".equals(envVars.get("ENABLE_TLS"))) {
+ return null;
+ }
+
+ TLSConfig tlsConfig = new TLSConfig();
+ String keyP12Path = envVars.get("KEY_P12_PATH");
+ String keyP12Password = envVars.get("KEY_P12_PASSWORD");
+ if (keyP12Path != null && keyP12Password != null) {
+ tlsConfig.keyStore(new P12File(keyP12Path, keyP12Password));
+ }
+
+ String trustP12Path = envVars.get("TRUST_P12_PATH");
+ String trustP12Password = envVars.get("TRUST_P12_PASSWORD");
+ if (trustP12Path != null && trustP12Password != null) {
+ tlsConfig.trustStore(new P12File(trustP12Path, trustP12Password));
+ }
+
+ if ("true".equals(envVars.get("ENABLE_TLS_CLIENT_AUTH"))) {
+ tlsConfig.enableClientAuth(true);
+ }
+ return tlsConfig;
+ }
+
+ private static void configureLogLevel(Map<String, String> envVars) {
+ Level logLevel = Level.toLevel(envVars.getOrDefault("LOG_LEVEL", "info"));
Logger rootLogger = (Logger) LoggerFactory.getLogger(Logger.ROOT_LOGGER_NAME);
rootLogger.setLevel(logLevel);
}
}