You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by bm...@apache.org on 2016/04/25 23:15:18 UTC

[02/24] mesos git commit: Fixed the logic for default docker cmd case.

Fixed the logic for default docker cmd case.

Review: https://reviews.apache.org/r/44468/


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/bf3cf92b
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/bf3cf92b
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/bf3cf92b

Branch: refs/heads/0.28.x
Commit: bf3cf92b2e43ca1ad71ef166c7f872426d62d0d5
Parents: 0558e11
Author: Gilbert Song <so...@gmail.com>
Authored: Mon Mar 7 17:32:10 2016 -0800
Committer: Vinod Kone <vi...@gmail.com>
Committed: Fri Mar 11 13:39:03 2016 -0500

----------------------------------------------------------------------
 .../containerizer/mesos/isolators/docker/runtime.cpp  | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/bf3cf92b/src/slave/containerizer/mesos/isolators/docker/runtime.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/isolators/docker/runtime.cpp b/src/slave/containerizer/mesos/isolators/docker/runtime.cpp
index 0545fb7..f97a9a9 100644
--- a/src/slave/containerizer/mesos/isolators/docker/runtime.cpp
+++ b/src/slave/containerizer/mesos/isolators/docker/runtime.cpp
@@ -327,8 +327,22 @@ Result<CommandInfo> DockerRuntimeIsolatorProcess::getLaunchCommand(
     }
   } else if (config.cmd_size() > 0) {
     command.set_value(config.cmd(0));
+
+    // Put user defined argv after default cmd[0].
+    command.clear_arguments();
     command.add_arguments(config.cmd(0));
 
+    // Append all possible user argv after cmd[0].
+    if (!containerConfig.has_task_info()) {
+      // Custom executor case.
+      command.mutable_arguments()->MergeFrom(
+          containerConfig.executor_info().command().arguments());
+    } else {
+      // Command task case.
+      command.mutable_arguments()->MergeFrom(
+          containerConfig.task_info().command().arguments());
+    }
+
     // Overwrite default cmd arguments if CommandInfo arguments
     // are set by user.
     if (command.arguments_size() == 1) {