diff options
Diffstat (limited to 'docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/CreateContainerCommandImpl.java')
-rw-r--r-- | docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/CreateContainerCommandImpl.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/CreateContainerCommandImpl.java b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/CreateContainerCommandImpl.java index 6f9edc1e106..59d7b987093 100644 --- a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/CreateContainerCommandImpl.java +++ b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/CreateContainerCommandImpl.java @@ -32,6 +32,7 @@ class CreateContainerCommandImpl implements Docker.CreateContainerCommand { private Optional<String> networkMode = Optional.empty(); private Optional<String> ipv4Address = Optional.empty(); private Optional<String> ipv6Address = Optional.empty(); + private Optional<String[]> entrypoint = Optional.empty(); CreateContainerCommandImpl(DockerClient docker, DockerImage dockerImage, @@ -56,6 +57,12 @@ class CreateContainerCommandImpl implements Docker.CreateContainerCommand { return this; } + @Override + public Docker.CreateContainerCommand withEntrypoint(String... entrypoint) { + this.entrypoint = Optional.of(entrypoint); + return this; + } + @Override public Docker.CreateContainerCommand withEnvironment(String name, String value) { @@ -119,6 +126,7 @@ class CreateContainerCommandImpl implements Docker.CreateContainerCommand { if (networkMode.isPresent()) containerCmd = containerCmd.withNetworkMode(networkMode.get()); if (ipv4Address.isPresent()) containerCmd = containerCmd.withIpv4Address(ipv4Address.get()); if (ipv6Address.isPresent()) containerCmd = containerCmd.withIpv6Address(ipv6Address.get()); + if (entrypoint.isPresent()) containerCmd = containerCmd.withEntrypoint(entrypoint.get()); return containerCmd; } @@ -126,7 +134,7 @@ class CreateContainerCommandImpl implements Docker.CreateContainerCommand { /** Maps ("--env", {"A", "B", "C"}) to "--env A --env B --env C ". */ private String toRepeatedOption(String option, List<String> optionValues) { StringBuilder builder = new StringBuilder(); - optionValues.stream().forEach(optionValue -> builder.append(option).append(" ").append(optionValue).append(" ")); + optionValues.forEach(optionValue -> builder.append(option).append(" ").append(optionValue).append(" ")); return builder.toString(); } @@ -153,6 +161,7 @@ class CreateContainerCommandImpl implements Docker.CreateContainerCommand { + toOptionalOption("--net", networkMode) + toOptionalOption("--ip", ipv4Address) + toOptionalOption("--ip6", ipv6Address) + + toOptionalOption("--entrypoint", entrypoint) + dockerImage.asString(); } |