/** * A name consisting of lowercase letters and numbers only. */ public static ProjectName fromString(String name) { return ImmutableProjectName.of(name); } }
@Override public void validateEnvironmentVariables(Map<String, String> dockerEnvironment) { validator.validateEnvironmentVariables(dockerEnvironment); }
@Override public String resolveIp(String dockerHost) { return resolver.resolveIp(dockerHost); }
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); }
private void setupDockerComposeRule() throws InterruptedException, IOException { Set<String> containerDockerComposeFiles = containersToStart.stream() .map(Container::getDockerComposeFile) .map(dockerComposeFilesToTemporaryCopies::getUnchecked) .collect(Collectors.toSet()); Map<String, String> environment = containersToStart.stream() .flatMap(container -> container.getEnvironment().entrySet().stream()) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (fst, snd) -> snd)); DockerMachine machine = DockerMachine.localMachine() .withEnvironment(environment) .build(); dockerComposeRule = DockerComposeRule.builder() .files(DockerComposeFiles.from(containerDockerComposeFiles.toArray(new String[0]))) .projectName(PROJECT_NAME) .machine(machine) .logCollector(currentLogCollector) .shutdownStrategy(ShutdownStrategy.AGGRESSIVE_WITH_NETWORK_CLEANUP) .build(); dockerComposeRule.before(); }
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 String asString() { return projectName(); }
public static DockerCompositionBuilder of(DockerComposeFiles dockerComposeFiles, DockerMachine dockerMachine, String projectName) { return new DockerCompositionBuilder() .files(dockerComposeFiles) .machine(dockerMachine) .projectName(ProjectName.fromString(projectName)); }
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 static DockerCompositionBuilder of(String dockerComposeFile, DockerMachine dockerMachine) { return new DockerCompositionBuilder() .files(DockerComposeFiles.from(dockerComposeFile)) .machine(dockerMachine); }
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(); }
/** * @param name A name consisting of lowercase letters and numbers only. * @return The corresponding project name * @see ProjectName */ public static ProjectName fromString(String name) { return ImmutableProjectName.of(name); } }
@Override public void validateEnvironmentVariables(Map<String, String> dockerEnvironment) { validator.validateEnvironmentVariables(dockerEnvironment); }
@Override public String resolveIp(String dockerHost) { return resolver.resolveIp(dockerHost); }
public String asString() { return projectName(); }
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); }
/** * @param name A name consisting of lowercase letters and numbers only. * @return The corresponding project name * @see ProjectName */ public static ProjectName fromString(String name) { return ImmutableProjectName.of(name); } }
@Override public void validateEnvironmentVariables(Map<String, String> dockerEnvironment) { validator.validateEnvironmentVariables(dockerEnvironment); }
@Override public String resolveIp(String dockerHost) { return resolver.resolveIp(dockerHost); }
public String asString() { return projectName(); }