You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by ji...@apache.org on 2016/10/05 23:57:14 UTC
[2/2] mesos git commit: Refactored the provisioner recover test.
Refactored the provisioner recover test.
Review: https://reviews.apache.org/r/52536/
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/8a53c850
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/8a53c850
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/8a53c850
Branch: refs/heads/master
Commit: 8a53c850e1a85b3a69b09e5f15c7f9aa0f69f116
Parents: 76cc831
Author: Gilbert Song <so...@gmail.com>
Authored: Wed Oct 5 16:56:34 2016 -0700
Committer: Jie Yu <yu...@gmail.com>
Committed: Wed Oct 5 16:56:48 2016 -0700
----------------------------------------------------------------------
.../containerizer/provisioner_appc_tests.cpp | 44 +++++++++++---------
1 file changed, 24 insertions(+), 20 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/8a53c850/src/tests/containerizer/provisioner_appc_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/containerizer/provisioner_appc_tests.cpp b/src/tests/containerizer/provisioner_appc_tests.cpp
index 6ef1c92..324ee9a 100644
--- a/src/tests/containerizer/provisioner_appc_tests.cpp
+++ b/src/tests/containerizer/provisioner_appc_tests.cpp
@@ -421,8 +421,8 @@ TEST_F(ProvisionerAppcTest, Recover)
flags.image_provisioner_backend = "copy";
flags.work_dir = path::join(sandbox.get(), "work_dir");
- Try<Owned<Provisioner>> provisioner1 = Provisioner::create(flags);
- ASSERT_SOME(provisioner1);
+ Try<Owned<Provisioner>> provisioner = Provisioner::create(flags);
+ ASSERT_SOME(provisioner);
Try<string> createImage = createTestImage(
flags.appc_store_dir,
@@ -431,7 +431,7 @@ TEST_F(ProvisionerAppcTest, Recover)
ASSERT_SOME(createImage);
// Recover. This is when the image in the store is loaded.
- AWAIT_READY(provisioner1.get()->recover({}));
+ AWAIT_READY(provisioner.get()->recover({}));
Image image;
image.mutable_appc()->CopyFrom(getTestImage());
@@ -440,18 +440,20 @@ TEST_F(ProvisionerAppcTest, Recover)
containerId.set_value(UUID::random().toString());
Future<slave::ProvisionInfo> provisionInfo =
- provisioner1.get()->provision(containerId, image);
+ provisioner.get()->provision(containerId, image);
AWAIT_READY(provisionInfo);
+ provisioner->reset();
+
// Create a new provisioner to recover the state from the container.
- Try<Owned<Provisioner>> provisioner2 = Provisioner::create(flags);
- ASSERT_SOME(provisioner2);
+ provisioner = Provisioner::create(flags);
+ ASSERT_SOME(provisioner);
- AWAIT_READY(provisioner2.get()->recover({containerId}));
+ AWAIT_READY(provisioner.get()->recover({containerId}));
// It's possible for the user to provision two different rootfses
// from the same image.
- AWAIT_READY(provisioner2.get()->provision(containerId, image));
+ AWAIT_READY(provisioner.get()->provision(containerId, image));
string provisionerDir = slave::paths::getProvisionerDir(flags.work_dir);
@@ -471,7 +473,7 @@ TEST_F(ProvisionerAppcTest, Recover)
ASSERT_TRUE(rootfses->contains(flags.image_provisioner_backend));
EXPECT_EQ(2u, rootfses->get(flags.image_provisioner_backend)->size());
- Future<bool> destroy = provisioner2.get()->destroy(containerId);
+ Future<bool> destroy = provisioner.get()->destroy(containerId);
AWAIT_READY(destroy);
EXPECT_TRUE(destroy.get());
@@ -490,8 +492,8 @@ TEST_F(ProvisionerAppcTest, RecoverNestedContainer)
flags.image_provisioner_backend = "copy";
flags.work_dir = path::join(sandbox.get(), "work_dir");
- Try<Owned<Provisioner>> provisioner1 = Provisioner::create(flags);
- ASSERT_SOME(provisioner1);
+ Try<Owned<Provisioner>> provisioner = Provisioner::create(flags);
+ ASSERT_SOME(provisioner);
Try<string> createImage = createTestImage(
flags.appc_store_dir,
@@ -500,7 +502,7 @@ TEST_F(ProvisionerAppcTest, RecoverNestedContainer)
ASSERT_SOME(createImage);
// Recover. This is when the image in the store is loaded.
- AWAIT_READY(provisioner1.get()->recover({}));
+ AWAIT_READY(provisioner.get()->recover({}));
Image image;
image.mutable_appc()->CopyFrom(getTestImage());
@@ -512,15 +514,17 @@ TEST_F(ProvisionerAppcTest, RecoverNestedContainer)
child.set_value(UUID::random().toString());
child.mutable_parent()->CopyFrom(parent);
- AWAIT_READY(provisioner1.get()->provision(parent, image));
- AWAIT_READY(provisioner1.get()->provision(child, image));
+ AWAIT_READY(provisioner.get()->provision(parent, image));
+ AWAIT_READY(provisioner.get()->provision(child, image));
+
+ provisioner->reset();
// Create a new provisioner to recover the state from the container.
- Try<Owned<Provisioner>> provisioner2 = Provisioner::create(flags);
- ASSERT_SOME(provisioner2);
+ provisioner = Provisioner::create(flags);
+ ASSERT_SOME(provisioner);
- AWAIT_READY(provisioner2.get()->recover({parent, child}));
- AWAIT_READY(provisioner2.get()->provision(child, image));
+ AWAIT_READY(provisioner.get()->recover({parent, child}));
+ AWAIT_READY(provisioner.get()->provision(child, image));
const string provisionerDir = slave::paths::getProvisionerDir(flags.work_dir);
@@ -529,7 +533,7 @@ TEST_F(ProvisionerAppcTest, RecoverNestedContainer)
provisionerDir,
child);
- Future<bool> destroy = provisioner2.get()->destroy(child);
+ Future<bool> destroy = provisioner.get()->destroy(child);
AWAIT_READY(destroy);
EXPECT_TRUE(destroy.get());
EXPECT_FALSE(os::exists(containerDir));
@@ -539,7 +543,7 @@ TEST_F(ProvisionerAppcTest, RecoverNestedContainer)
provisionerDir,
parent);
- destroy = provisioner2.get()->destroy(parent);
+ destroy = provisioner.get()->destroy(parent);
AWAIT_READY(destroy);
EXPECT_TRUE(destroy.get());
EXPECT_FALSE(os::exists(containerDir));