You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by be...@apache.org on 2014/10/31 23:06:01 UTC
[02/12] git commit: Introduced
DockerContainerizerProcess::Container::name.
Introduced DockerContainerizerProcess::Container::name.
Review: https://reviews.apache.org/r/26611
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/05211c53
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/05211c53
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/05211c53
Branch: refs/heads/master
Commit: 05211c532d20d6802f49b3f21407c94935a88879
Parents: 3073bd4
Author: Benjamin Hindman <be...@gmail.com>
Authored: Sat Oct 11 12:38:14 2014 -0700
Committer: Benjamin Hindman <be...@gmail.com>
Committed: Fri Oct 31 15:05:38 2014 -0700
----------------------------------------------------------------------
src/slave/containerizer/docker.cpp | 31 ++++++++++++++-----------------
1 file changed, 14 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/05211c53/src/slave/containerizer/docker.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/docker.cpp b/src/slave/containerizer/docker.cpp
index 9a29489..312c8d8 100644
--- a/src/slave/containerizer/docker.cpp
+++ b/src/slave/containerizer/docker.cpp
@@ -234,8 +234,6 @@ private:
// container destroy.
void reaped(const ContainerID& containerId);
- static std::string containerName(const ContainerID& containerId);
-
const Flags flags;
Docker docker;
@@ -245,6 +243,11 @@ private:
Container(const ContainerID& id)
: state(FETCHING), id(id) {}
+ std::string name()
+ {
+ return DOCKER_NAME_PREFIX + stringify(id);
+ }
+
// The DockerContainerier needs to be able to properly clean up
// Docker containers, regardless of when they are destroyed. For
// example, if a container gets destroyed while we are fetching,
@@ -565,12 +568,6 @@ static int setup(const string& directory)
}
-string DockerContainerizerProcess::containerName(const ContainerID& containerId)
-{
- return DOCKER_NAME_PREFIX + stringify(containerId);
-}
-
-
Future<Nothing> DockerContainerizerProcess::recover(
const Option<SlaveState>& state)
{
@@ -810,7 +807,7 @@ Future<bool> DockerContainerizerProcess::__launch(
containers_[containerId]->run = docker.run(
taskInfo.container(),
taskInfo.command(),
- containerName(containerId),
+ containers_[containerId]->name(),
directory,
flags.docker_sandbox_directory,
taskInfo.resources());
@@ -863,7 +860,7 @@ Future<bool> DockerContainerizerProcess::___launch(
// status from the container, hence the use of /bin/bash.
string override =
"/bin/sh -c 'exit `" +
- flags.docker + " wait " + containerName(containerId) + "`'";
+ flags.docker + " wait " + containers_[containerId]->name() + "`'";
Try<Subprocess> s = subprocess(
executorInfo.command().value() + " --override " + override,
@@ -928,7 +925,7 @@ Future<bool> DockerContainerizerProcess::___launch(
.onAny(defer(self(), &Self::reaped, containerId));
// TODO(benh): Check failure of Docker::logs.
- docker.logs(containerName(containerId), directory);
+ docker.logs(containers_[containerId]->name(), directory);
return true;
}
@@ -1061,7 +1058,7 @@ Future<bool> DockerContainerizerProcess::__launch(
containers_[containerId]->run = docker.run(
executorInfo.container(),
executorInfo.command(),
- containerName(containerId),
+ containers_[containerId]->name(),
directory,
flags.docker_sandbox_directory,
None(),
@@ -1089,7 +1086,7 @@ Future<bool> DockerContainerizerProcess::___launch(
{
// We shouldn't remove container until we set 'status'.
CHECK(containers_.contains(containerId));
- return docker.inspect(containerName(containerId))
+ return docker.inspect(containers_[containerId]->name())
.then(defer(self(),
&Self::____launch,
containerId,
@@ -1157,7 +1154,7 @@ Future<bool> DockerContainerizerProcess::____launch(
.onAny(defer(self(), &Self::reaped, containerId));
// TODO(benh): Check failure of Docker::logs.
- docker.logs(containerName(containerId), directory);
+ docker.logs(containers_[containerId]->name(), directory);
return true;
}
@@ -1195,7 +1192,7 @@ Future<Nothing> DockerContainerizerProcess::update(
return __update(containerId, _resources, container->pid.get());
}
- return docker.inspect(containerName(containerId))
+ return docker.inspect(container->name())
.then(defer(self(), &Self::_update, containerId, _resources, lambda::_1));
#else
return Nothing();
@@ -1371,7 +1368,7 @@ Future<ResourceStatistics> DockerContainerizerProcess::usage(
return Failure("Container is being removed: " + stringify(containerId));
}
- return docker.inspect(containerName(containerId))
+ return docker.inspect(container->name())
.then(defer(self(), &Self::_usage, containerId, lambda::_1));
#endif // __linux__
}
@@ -1567,7 +1564,7 @@ void DockerContainerizerProcess::_destroy(
LOG(INFO) << "Running docker kill on container '" << containerId << "'";
- docker.kill(containerName(containerId), true)
+ docker.kill(container->name(), true)
.onAny(defer(self(), &Self::__destroy, containerId, killed, lambda::_1));
}