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/08/05 00:09:29 UTC
[08/43] git commit: Added rm() in docker.hpp/cpp to enable users
remove containers.
Added rm() in docker.hpp/cpp to enable users remove containers.
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/d60cc835
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/d60cc835
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/d60cc835
Branch: refs/heads/master
Commit: d60cc8358000433bc14011f73d475830e113bbb2
Parents: cad1bbb
Author: Yifan Gu <gu...@gmail.com>
Authored: Tue Jun 24 16:52:48 2014 -0700
Committer: Benjamin Hindman <be...@gmail.com>
Committed: Mon Aug 4 15:08:15 2014 -0700
----------------------------------------------------------------------
src/docker/docker.cpp | 20 ++++++++++++++++++++
src/docker/docker.hpp | 5 +++++
2 files changed, 25 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/d60cc835/src/docker/docker.cpp
----------------------------------------------------------------------
diff --git a/src/docker/docker.cpp b/src/docker/docker.cpp
index 7d72ea2..500517c 100644
--- a/src/docker/docker.cpp
+++ b/src/docker/docker.cpp
@@ -111,6 +111,26 @@ Future<Option<int> > Docker::kill(const string& container) const
}
+Future<Option<int> > Docker::rm(const string& container, const bool force) const
+{
+ string cmd = force ? " rm -f " : " rm ";
+
+ VLOG(1) << "Running " << path << cmd << container;
+
+ Try<Subprocess> s = subprocess(
+ path + cmd + container,
+ Subprocess::PIPE(),
+ Subprocess::PIPE(),
+ Subprocess::PIPE());
+
+ if (s.isError()) {
+ return Failure(s.error());
+ }
+
+ return s.get().status();
+}
+
+
Future<Docker::Container> Docker::inspect(const string& container) const
{
VLOG(1) << "Running " << path << " inspect " << container;
http://git-wip-us.apache.org/repos/asf/mesos/blob/d60cc835/src/docker/docker.hpp
----------------------------------------------------------------------
diff --git a/src/docker/docker.hpp b/src/docker/docker.hpp
index 6aa25b1..b0d0a3a 100644
--- a/src/docker/docker.hpp
+++ b/src/docker/docker.hpp
@@ -68,6 +68,11 @@ public:
process::Future<Option<int> > kill(
const std::string& container) const;
+ // Performs 'docker rm (-f) CONTAINER'.
+ process::Future<Option<int> > rm(
+ const std::string& container,
+ const bool force = true) const;
+
// Performs 'docker inspect CONTAINER'.
process::Future<Container> inspect(
const std::string& container) const;