public static LocalBuilder localMachine() { Map<String, String> systemEnv = System.getenv(); Optional<DockerType> dockerType = DockerType.getFirstValidDockerTypeForEnvironment(systemEnv); if (!dockerType.isPresent()) { log.debug( "Failed to determine Docker type (daemon or remote) based on current environment. " + "Proceeding with {} as the type.", FALLBACK_DOCKER_TYPE); } return new LocalBuilder(dockerType.orElse(FALLBACK_DOCKER_TYPE), systemEnv); }
public DockerMachine build() { dockerType.validateEnvironmentVariables(systemEnvironment); AdditionalEnvironmentValidator.validate(additionalEnvironment); Map<String, String> combinedEnvironment = newHashMap(); combinedEnvironment.putAll(systemEnvironment); combinedEnvironment.putAll(additionalEnvironment); String dockerHost = systemEnvironment.getOrDefault(DOCKER_HOST, ""); return new DockerMachine(dockerType.resolveIp(dockerHost), ImmutableMap.copyOf(combinedEnvironment)); } }
public static Optional<DockerType> getFirstValidDockerTypeForEnvironment(Map<String, String> environment) { for (DockerType currType : DockerType.values()) { try { currType.validateEnvironmentVariables(environment); return Optional.of(currType); } catch (IllegalStateException e) { // ignore and try next type } } return Optional.empty(); }
public DockerMachine build() { DockerType.REMOTE.validateEnvironmentVariables(dockerEnvironment); AdditionalEnvironmentValidator.validate(additionalEnvironment); String dockerHost = dockerEnvironment.getOrDefault(DOCKER_HOST, ""); String hostIp = new RemoteHostIpResolver().resolveIp(dockerHost); Map<String, String> environment = ImmutableMap.<String, String>builder() .putAll(dockerEnvironment) .putAll(additionalEnvironment) .build(); return new DockerMachine(hostIp, environment); }
public DockerMachine build() { DockerType.REMOTE.validateEnvironmentVariables(dockerEnvironment); AdditionalEnvironmentValidator.validate(additionalEnvironment); String dockerHost = dockerEnvironment.getOrDefault(DOCKER_HOST, ""); String hostIp = new RemoteHostIpResolver().resolveIp(dockerHost); Map<String, String> environment = ImmutableMap.<String, String>builder() .putAll(dockerEnvironment) .putAll(additionalEnvironment) .build(); return new DockerMachine(hostIp, environment); }
public DockerMachine build() { dockerType.validateEnvironmentVariables(systemEnvironment); AdditionalEnvironmentValidator.validate(additionalEnvironment); Map<String, String> combinedEnvironment = newHashMap(); combinedEnvironment.putAll(systemEnvironment); combinedEnvironment.putAll(additionalEnvironment); String dockerHost = systemEnvironment.getOrDefault(DOCKER_HOST, ""); return new DockerMachine(dockerType.resolveIp(dockerHost), ImmutableMap.copyOf(combinedEnvironment)); } }
public static Optional<DockerType> getFirstValidDockerTypeForEnvironment(Map<String, String> environment) { for (DockerType currType : DockerType.values()) { try { currType.validateEnvironmentVariables(environment); return Optional.of(currType); } catch (IllegalStateException e) { // ignore and try next type } } return Optional.empty(); }
public static LocalBuilder localMachine() { Map<String, String> systemEnv = System.getenv(); Optional<DockerType> dockerType = DockerType.getFirstValidDockerTypeForEnvironment(systemEnv); if (!dockerType.isPresent()) { log.debug( "Failed to determine Docker type (daemon or remote) based on current environment. " + "Proceeding with {} as the type.", FALLBACK_DOCKER_TYPE); } return new LocalBuilder(dockerType.orElse(FALLBACK_DOCKER_TYPE), systemEnv); }
public DockerMachine build() { DockerType.REMOTE.validateEnvironmentVariables(dockerEnvironment); AdditionalEnvironmentValidator.validate(additionalEnvironment); String dockerHost = dockerEnvironment.getOrDefault(DOCKER_HOST, ""); String hostIp = new RemoteHostIpResolver().resolveIp(dockerHost); Map<String, String> environment = ImmutableMap.<String, String>builder() .putAll(dockerEnvironment) .putAll(additionalEnvironment) .build(); return new DockerMachine(hostIp, environment); }
public DockerMachine build() { dockerType.validateEnvironmentVariables(systemEnvironment); AdditionalEnvironmentValidator.validate(additionalEnvironment); Map<String, String> combinedEnvironment = newHashMap(); combinedEnvironment.putAll(systemEnvironment); combinedEnvironment.putAll(additionalEnvironment); String dockerHost = systemEnvironment.getOrDefault(DOCKER_HOST, ""); return new DockerMachine(dockerType.resolveIp(dockerHost), ImmutableMap.copyOf(combinedEnvironment)); } }
public static Optional<DockerType> getFirstValidDockerTypeForEnvironment(Map<String, String> environment) { for (DockerType currType : DockerType.values()) { try { currType.validateEnvironmentVariables(environment); return Optional.of(currType); } catch (IllegalStateException e) { // ignore and try next type } } return Optional.empty(); }
public static LocalBuilder localMachine() { Map<String, String> systemEnv = System.getenv(); Optional<DockerType> dockerType = DockerType.getFirstValidDockerTypeForEnvironment(systemEnv); if (!dockerType.isPresent()) { log.debug( "Failed to determine Docker type (daemon or remote) based on current environment. " + "Proceeding with {} as the type.", FALLBACK_DOCKER_TYPE); } return new LocalBuilder(dockerType.orElse(FALLBACK_DOCKER_TYPE), systemEnv); }
@Test public void return_remote_as_first_valid_type_if_environment_is_illegal_for_daemon() { Map<String, String> variables = ImmutableMap.<String, String>builder() .put(DOCKER_HOST, "tcp://192.168.99.100:2376") .put(DOCKER_TLS_VERIFY, "1") .put(DOCKER_CERT_PATH, "/path/to/certs") .build(); assertThat(DockerType.getFirstValidDockerTypeForEnvironment(variables), is(Optional.of(DockerType.REMOTE))); }
@Test public void return_daemon_as_first_valid_type_if_environment_is_illegal_for_remote() { Map<String, String> variables = ImmutableMap.of(); assertThat(DockerType.getFirstValidDockerTypeForEnvironment(variables), is(Optional.of(DockerType.DAEMON))); }
@Test public void return_absent_as_first_valid_type_if_environment_is_illegal_for_all() { Map<String, String> variables = ImmutableMap.<String, String>builder() .put(DOCKER_TLS_VERIFY, "1") .build(); assertThat(DockerType.getFirstValidDockerTypeForEnvironment(variables), is(Optional.empty())); }