summaryrefslogtreecommitdiffstats
path: root/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/CreateContainerCommandImpl.java
diff options
context:
space:
mode:
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.java11
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();
}