You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by jo...@apache.org on 2017/05/26 01:41:03 UTC
[12/16] mesos git commit: Addressed a TODO about checkpointing in
tests.
Addressed a TODO about checkpointing in tests.
Checkpointing only plays a role in tests when the containerizer
is destroyed and subsequently recovered. This commit updates a
couple of test files to the new containerizer interface and
also turns checkpointing _off_ in tests which do not perform any
containerizer recovery.
Review: https://reviews.apache.org/r/58910
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/b194d5a6
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/b194d5a6
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/b194d5a6
Branch: refs/heads/master
Commit: b194d5a62e44711d0147ba5a65d8f0e7cd6c367d
Parents: 012e6a2
Author: Joseph Wu <jo...@apache.org>
Authored: Tue May 2 16:51:43 2017 -0700
Committer: Joseph Wu <jo...@apache.org>
Committed: Thu May 25 18:37:07 2017 -0700
----------------------------------------------------------------------
.../containerizer/io_switchboard_tests.cpp | 45 +-
.../containerizer/mesos_containerizer_tests.cpp | 247 ++++------
.../nested_mesos_containerizer_tests.cpp | 483 +++++++++----------
.../volume_sandbox_path_isolator_tests.cpp | 30 +-
4 files changed, 361 insertions(+), 444 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/b194d5a6/src/tests/containerizer/io_switchboard_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/containerizer/io_switchboard_tests.cpp b/src/tests/containerizer/io_switchboard_tests.cpp
index f5c2157..777f76a 100644
--- a/src/tests/containerizer/io_switchboard_tests.cpp
+++ b/src/tests/containerizer/io_switchboard_tests.cpp
@@ -711,7 +711,7 @@ TEST_F(IOSwitchboardTest, ContainerAttach)
flags.launcher = "posix";
flags.isolation = "posix/cpu";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -744,13 +744,9 @@ TEST_F(IOSwitchboardTest, ContainerAttach)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executorInfo,
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(None(), executorInfo, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -777,7 +773,7 @@ TEST_F(IOSwitchboardTest, OutputRedirectionWithTTY)
flags.launcher = "posix";
flags.isolation = "posix/cpu";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -813,13 +809,9 @@ TEST_F(IOSwitchboardTest, OutputRedirectionWithTTY)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executorInfo,
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(None(), executorInfo, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -842,7 +834,7 @@ TEST_F(IOSwitchboardTest, KillSwitchboardContainerDestroyed)
flags.launcher = "posix";
flags.isolation = "posix/cpu";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -871,13 +863,9 @@ TEST_F(IOSwitchboardTest, KillSwitchboardContainerDestroyed)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executorInfo,
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(None(), executorInfo, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -887,11 +875,12 @@ TEST_F(IOSwitchboardTest, KillSwitchboardContainerDestroyed)
launch = containerizer->launch(
childContainerId,
- createCommandInfo("sleep 1000"),
- None(),
- None(),
- state.id,
- mesos::slave::ContainerClass::DEBUG);
+ createContainerConfig(
+ createCommandInfo("sleep 1000"),
+ None(),
+ mesos::slave::ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -937,7 +926,7 @@ TEST_F(IOSwitchboardTest, DISABLED_RecoverThenKillSwitchboardContainerDestroyed)
flags.launcher = "posix";
flags.isolation = "posix/cpu";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Owned<MasterDetector> detector = master.get()->createDetector();
@@ -1058,7 +1047,7 @@ TEST_F(IOSwitchboardTest, ContainerAttachAfterSlaveRestart)
flags.launcher = "posix";
flags.isolation = "posix/cpu";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Owned<MasterDetector> detector = master.get()->createDetector();
http://git-wip-us.apache.org/repos/asf/mesos/blob/b194d5a6/src/tests/containerizer/mesos_containerizer_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/containerizer/mesos_containerizer_tests.cpp b/src/tests/containerizer/mesos_containerizer_tests.cpp
index 13e0f7e..d3a2bd7 100644
--- a/src/tests/containerizer/mesos_containerizer_tests.cpp
+++ b/src/tests/containerizer/mesos_containerizer_tests.cpp
@@ -106,7 +106,7 @@ TEST_F(MesosContainerizerTest, Launch)
flags.launcher = "posix";
flags.isolation = "posix/cpu";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -130,13 +130,12 @@ TEST_F(MesosContainerizerTest, Launch)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "exit 42", "cpus:1"),
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "exit 42", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -155,7 +154,7 @@ TEST_F(MesosContainerizerTest, Destroy)
flags.launcher = "posix";
flags.isolation = "posix/cpu";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -179,13 +178,12 @@ TEST_F(MesosContainerizerTest, Destroy)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -208,7 +206,7 @@ TEST_F(MesosContainerizerTest, StatusWithContainerID)
flags.launcher = "posix";
flags.isolation = "posix/cpu";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -232,13 +230,12 @@ TEST_F(MesosContainerizerTest, StatusWithContainerID)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -264,7 +261,6 @@ public:
// Construct a MesosContainerizer with MockIsolator(s) which return
// the provided ContainerLaunchInfo for Isolator::prepare.
Try<MesosContainerizer*> createContainerizer(
- Fetcher* fetcher,
const vector<Option<ContainerLaunchInfo>>& launchInfos)
{
vector<Owned<Isolator>> isolators;
@@ -281,6 +277,8 @@ public:
slave::Flags flags = CreateSlaveFlags();
flags.launcher = "posix";
+ fetcher.reset(new Fetcher(flags));
+
Try<Launcher*> launcher_ = SubprocessLauncher::create(flags);
if (launcher_.isError()) {
return Error(launcher_.error());
@@ -296,37 +294,33 @@ public:
return MesosContainerizer::create(
flags,
true,
- fetcher,
+ fetcher.get(),
std::move(launcher),
provisioner->share(),
isolators);
}
Try<MesosContainerizer*> createContainerizer(
- Fetcher* fetcher,
const Option<ContainerLaunchInfo>& launchInfo)
{
vector<Option<ContainerLaunchInfo>> launchInfos = {launchInfo};
- return createContainerizer(fetcher, launchInfos);
+ return createContainerizer(launchInfos);
}
+
+private:
+ Owned<Fetcher> fetcher;
};
// The isolator has a prepare command that succeeds.
TEST_F(MesosContainerizerIsolatorPreparationTest, ScriptSucceeds)
{
- string directory = os::getcwd(); // We're inside a temporary sandbox.
- string file = path::join(directory, "child.script.executed");
-
- Fetcher fetcher;
+ string file = path::join(sandbox.get(), "child.script.executed");
ContainerLaunchInfo launchInfo;
launchInfo.add_pre_exec_commands()->set_value("touch " + file);
- Try<MesosContainerizer*> create = createContainerizer(
- &fetcher,
- launchInfo);
-
+ Try<MesosContainerizer*> create = createContainerizer(launchInfo);
ASSERT_SOME(create);
Owned<MesosContainerizer> containerizer(create.get());
@@ -336,13 +330,12 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, ScriptSucceeds)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "exit 0"),
- directory,
- None(),
- SlaveID(),
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "exit 0"),
+ sandbox.get()),
map<string, string>(),
- false);
+ None());
// Wait until the launch completes.
AWAIT_READY(launch);
@@ -368,19 +361,13 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, ScriptSucceeds)
// The isolator has a prepare command that fails.
TEST_F(MesosContainerizerIsolatorPreparationTest, ScriptFails)
{
- string directory = os::getcwd(); // We're inside a temporary sandbox.
- string file = path::join(directory, "child.script.executed");
-
- Fetcher fetcher;
+ string file = path::join(sandbox.get(), "child.script.executed");
ContainerLaunchInfo launchInfo;
launchInfo.add_pre_exec_commands()->set_value(
"touch " + file + " && exit 1");
- Try<MesosContainerizer*> create = createContainerizer(
- &fetcher,
- launchInfo);
-
+ Try<MesosContainerizer*> create = createContainerizer(launchInfo);
ASSERT_SOME(create);
Owned<MesosContainerizer> containerizer(create.get());
@@ -390,13 +377,12 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, ScriptFails)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "exit 0"),
- directory,
- None(),
- SlaveID(),
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "exit 0"),
+ sandbox.get()),
map<string, string>(),
- false);
+ None());
// Wait until the launch completes.
AWAIT_READY(launch);
@@ -424,9 +410,8 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, ScriptFails)
// launch should fail from the failing prepare command.
TEST_F(MesosContainerizerIsolatorPreparationTest, MultipleScripts)
{
- string directory = os::getcwd(); // We're inside a temporary sandbox.
- string file1 = path::join(directory, "child.script.executed.1");
- string file2 = path::join(directory, "child.script.executed.2");
+ string file1 = path::join(sandbox.get(), "child.script.executed.1");
+ string file2 = path::join(sandbox.get(), "child.script.executed.2");
vector<Option<ContainerLaunchInfo>> launchInfos;
@@ -441,12 +426,7 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, MultipleScripts)
launch2.add_pre_exec_commands()->set_value("touch " + file2 + " && exit 1");
launchInfos.push_back(launch2);
- Fetcher fetcher;
-
- Try<MesosContainerizer*> create = createContainerizer(
- &fetcher,
- launchInfos);
-
+ Try<MesosContainerizer*> create = createContainerizer(launchInfos);
ASSERT_SOME(create);
Owned<MesosContainerizer> containerizer(create.get());
@@ -456,13 +436,12 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, MultipleScripts)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "exit 0"),
- directory,
- None(),
- SlaveID(),
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "exit 0"),
+ sandbox.get()),
map<string, string>(),
- false);
+ None());
// Wait until the launch completes.
AWAIT_READY(launch);
@@ -496,10 +475,7 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, ExecutorEnvironmentVariable)
net::IP ip = net::IP(INADDR_LOOPBACK);
os::setenv("LIBPROCESS_IP", stringify(ip));
- string directory = os::getcwd(); // We're inside a temporary sandbox.
- string file = path::join(directory, "child.script.executed");
-
- Fetcher fetcher;
+ string file = path::join(sandbox.get(), "child.script.executed");
ContainerLaunchInfo launchInfo;
@@ -509,10 +485,7 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, ExecutorEnvironmentVariable)
variable->set_name("TEST_ENVIRONMENT");
variable->set_value(file);
- Try<MesosContainerizer*> create = createContainerizer(
- &fetcher,
- launchInfo);
-
+ Try<MesosContainerizer*> create = createContainerizer(launchInfo);
ASSERT_SOME(create);
Owned<MesosContainerizer> containerizer(create.get());
@@ -534,7 +507,7 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, ExecutorEnvironmentVariable)
map<string, string> environment = executorEnvironment(
flags,
executorInfo,
- directory,
+ sandbox.get(),
slaveId,
PID<Slave>(),
None(),
@@ -542,13 +515,9 @@ TEST_F(MesosContainerizerIsolatorPreparationTest, ExecutorEnvironmentVariable)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executorInfo,
- directory,
- None(),
- slaveId,
+ createContainerConfig(None(), executorInfo, sandbox.get()),
environment,
- false);
+ None());
// Wait until the launch completes.
AWAIT_READY(launch);
@@ -583,11 +552,9 @@ class MesosContainerizerExecuteTest : public MesosTest {};
TEST_F(MesosContainerizerExecuteTest, IoRedirection)
{
- string directory = os::getcwd(); // We're inside a temporary sandbox.
-
slave::Flags flags = CreateSlaveFlags();
- Fetcher fetcher;
+ Fetcher fetcher(flags);
// Use local=false so std{err,out} are redirected to files.
Try<MesosContainerizer*> create = MesosContainerizer::create(
@@ -609,13 +576,12 @@ TEST_F(MesosContainerizerExecuteTest, IoRedirection)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", command),
- directory,
- None(),
- SlaveID(),
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", command),
+ sandbox.get()),
map<string, string>(),
- false);
+ None());
// Wait for the launch to complete.
AWAIT_READY(launch);
@@ -634,11 +600,11 @@ TEST_F(MesosContainerizerExecuteTest, IoRedirection)
// Check that std{err, out} was redirected.
// NOTE: Fetcher uses GLOG, which outputs extra information to
// stderr.
- Try<string> stderr = os::read(path::join(directory, "stderr"));
+ Try<string> stderr = os::read(path::join(sandbox.get(), "stderr"));
ASSERT_SOME(stderr);
EXPECT_TRUE(strings::contains(stderr.get(), errMsg));
- EXPECT_SOME_EQ(outMsg + "\n", os::read(path::join(directory, "stdout")));
+ EXPECT_SOME_EQ(outMsg + "\n", os::read(path::join(sandbox.get(), "stdout")));
}
@@ -646,12 +612,10 @@ TEST_F(MesosContainerizerExecuteTest, IoRedirection)
// are owned by the task user.
TEST_F(MesosContainerizerExecuteTest, ROOT_SandboxFileOwnership)
{
- string sandbox = os::getcwd(); // We're inside a temporary sandbox.
-
slave::Flags flags;
flags.launcher_dir = getLauncherDir();
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> _containerizer =
MesosContainerizer::create(flags, false, &fetcher);
@@ -669,13 +633,9 @@ TEST_F(MesosContainerizerExecuteTest, ROOT_SandboxFileOwnership)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- sandbox,
- None(),
- SlaveID(),
+ createContainerConfig(None(), executor, sandbox.get()),
map<string, string>(),
- false);
+ None());
// Wait for the launch to complete.
AWAIT_READY(launch);
@@ -685,12 +645,12 @@ TEST_F(MesosContainerizerExecuteTest, ROOT_SandboxFileOwnership)
// Verify that stdout is owned by the task user.
struct stat s;
- string stdoutPath = path::join(sandbox, "stdout");
+ string stdoutPath = path::join(sandbox.get(), "stdout");
EXPECT_EQ(0, ::stat(stdoutPath.c_str(), &s));
EXPECT_EQ(uid.get(), s.st_uid);
// Verify that stderr is owned by the task user.
- string stderrPath = path::join(sandbox, "stderr");
+ string stderrPath = path::join(sandbox.get(), "stderr");
EXPECT_EQ(0, ::stat(stderrPath.c_str(), &s));
EXPECT_EQ(uid.get(), s.st_uid);
@@ -720,7 +680,7 @@ TEST_F(MesosContainerizerDestroyTest, DestroyWhileFetching)
Owned<Launcher> launcher(launcher_.get());
- MockFetcherProcess* mockFetcherProcess = new MockFetcherProcess();
+ MockFetcherProcess* mockFetcherProcess = new MockFetcherProcess(flags);
Owned<FetcherProcess> fetcherProcess(mockFetcherProcess);
Fetcher fetcher(fetcherProcess);
@@ -743,7 +703,7 @@ TEST_F(MesosContainerizerDestroyTest, DestroyWhileFetching)
Promise<Nothing> promise;
// Letting exec hang to simulate a long fetch.
- EXPECT_CALL(*mockFetcherProcess, _fetch(_, _, _, _, _, _))
+ EXPECT_CALL(*mockFetcherProcess, _fetch(_, _, _, _, _))
.WillOnce(DoAll(FutureSatisfy(&fetch),
Return(promise.future())));
@@ -756,13 +716,12 @@ TEST_F(MesosContainerizerDestroyTest, DestroyWhileFetching)
containerizer->launch(
containerId,
- taskInfo,
- createExecutorInfo("executor", "exit 0"),
- os::getcwd(),
- None(),
- SlaveID(),
+ createContainerConfig(
+ taskInfo,
+ createExecutorInfo("executor", "exit 0"),
+ sandbox.get()),
map<string, string>(),
- false);
+ None());
Future<Option<ContainerTermination>> wait =
containerizer->wait(containerId);
@@ -799,7 +758,7 @@ TEST_F(MesosContainerizerDestroyTest, DestroyWhilePreparing)
.WillOnce(DoAll(FutureSatisfy(&prepare),
Return(promise.future())));
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<Owned<Provisioner>> provisioner = Provisioner::create(flags);
ASSERT_SOME(provisioner);
@@ -825,13 +784,12 @@ TEST_F(MesosContainerizerDestroyTest, DestroyWhilePreparing)
containerizer->launch(
containerId,
- taskInfo,
- createExecutorInfo("executor", "exit 0"),
- os::getcwd(),
- None(),
- SlaveID(),
+ createContainerConfig(
+ taskInfo,
+ createExecutorInfo("executor", "exit 0"),
+ sandbox.get()),
map<string, string>(),
- false);
+ None());
Future<Option<ContainerTermination>> wait =
containerizer->wait(containerId);
@@ -864,7 +822,7 @@ TEST_F(MesosContainerizerDestroyTest, DestroyUnknownContainer)
{
slave::Flags flags = CreateSlaveFlags();
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -925,7 +883,7 @@ TEST_F(MesosContainerizerProvisionerTest, ProvisionFailed)
EXPECT_CALL(*provisioner, destroy(_))
.WillOnce(Return(true));
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> _containerizer = MesosContainerizer::create(
flags,
@@ -963,13 +921,9 @@ TEST_F(MesosContainerizerProvisionerTest, ProvisionFailed)
Future<bool> launch = containerizer->launch(
containerId,
- taskInfo,
- executorInfo,
- os::getcwd(),
- None(),
- SlaveID(),
+ createContainerConfig(taskInfo, executorInfo, sandbox.get()),
map<string, string>(),
- false);
+ None());
AWAIT_READY(provision);
@@ -1013,7 +967,7 @@ TEST_F(MesosContainerizerProvisionerTest, DestroyWhileProvisioning)
EXPECT_CALL(*provisioner, destroy(_))
.WillOnce(Return(true));
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> _containerizer = MesosContainerizer::create(
flags,
@@ -1051,13 +1005,9 @@ TEST_F(MesosContainerizerProvisionerTest, DestroyWhileProvisioning)
Future<bool> launch = containerizer->launch(
containerId,
- taskInfo,
- executorInfo,
- os::getcwd(),
- None(),
- SlaveID(),
+ createContainerConfig(taskInfo, executorInfo, sandbox.get()),
map<string, string>(),
- false);
+ None());
Future<Option<ContainerTermination>> wait = containerizer->wait(containerId);
@@ -1108,7 +1058,7 @@ TEST_F(MesosContainerizerProvisionerTest, IsolatorCleanupBeforePrepare)
EXPECT_CALL(*isolator, cleanup(_))
.Times(0);
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> _containerizer = MesosContainerizer::create(
flags,
@@ -1146,13 +1096,9 @@ TEST_F(MesosContainerizerProvisionerTest, IsolatorCleanupBeforePrepare)
Future<bool> launch = containerizer->launch(
containerId,
- taskInfo,
- executorInfo,
- os::getcwd(),
- None(),
- SlaveID(),
+ createContainerConfig(taskInfo, executorInfo, sandbox.get()),
map<string, string>(),
- false);
+ None());
Future<Option<ContainerTermination>> wait = containerizer->wait(containerId);
@@ -1198,7 +1144,7 @@ TEST_F(MesosContainerizerDestroyTest, LauncherDestroyFailure)
Owned<Launcher> launcher(testLauncher);
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<Owned<Provisioner>> provisioner = Provisioner::create(flags);
ASSERT_SOME(provisioner);
@@ -1228,13 +1174,12 @@ TEST_F(MesosContainerizerDestroyTest, LauncherDestroyFailure)
Future<bool> launch = containerizer->launch(
containerId,
- taskInfo,
- createExecutorInfo("executor", "sleep 1000"),
- os::getcwd(),
- None(),
- SlaveID(),
+ createContainerConfig(
+ taskInfo,
+ createExecutorInfo("executor", "sleep 1000"),
+ sandbox.get()),
map<string, string>(),
- false);
+ None());
AWAIT_READY(launch);
@@ -1271,7 +1216,7 @@ class MesosContainerizerRecoverTest : public MesosTest {};
TEST_F(MesosContainerizerRecoverTest, SkipRecoverNonMesosContainers)
{
slave::Flags flags = CreateSlaveFlags();
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1371,7 +1316,7 @@ TEST_F(MesosContainerizerWaitTest, WaitUnknownContainer)
{
slave::Flags flags = CreateSlaveFlags();
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
http://git-wip-us.apache.org/repos/asf/mesos/blob/b194d5a6/src/tests/containerizer/nested_mesos_containerizer_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/containerizer/nested_mesos_containerizer_tests.cpp b/src/tests/containerizer/nested_mesos_containerizer_tests.cpp
index d47e9ae..e466434 100644
--- a/src/tests/containerizer/nested_mesos_containerizer_tests.cpp
+++ b/src/tests/containerizer/nested_mesos_containerizer_tests.cpp
@@ -173,7 +173,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_LaunchNested)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -197,13 +197,12 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_LaunchNested)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -214,10 +213,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_LaunchNested)
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("exit 42"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("exit 42")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -249,7 +247,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -282,13 +280,14 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(None(), executor, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ slave::paths::getForkedPidPath(
+ slave::paths::getMetaRootDir(flags.work_dir),
+ state.id,
+ executor.framework_id(),
+ executor.executor_id(),
+ containerId));
AWAIT_ASSERT_TRUE(launch);
@@ -307,11 +306,12 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launchNested = containerizer->launch(
nestedContainerId,
- createCommandInfo("exit $" + envKey),
- None(),
- None(),
- state.id,
- ContainerClass::DEBUG);
+ createContainerConfig(
+ createCommandInfo("exit $" + envKey),
+ None(),
+ ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launchNested);
@@ -340,11 +340,12 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launchNested = containerizer->launch(
nestedContainerId,
- nestedCommand,
- None(),
- None(),
- state.id,
- ContainerClass::DEBUG);
+ createContainerConfig(
+ nestedCommand,
+ None(),
+ ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launchNested);
@@ -390,11 +391,12 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launchNested = containerizer->launch(
nestedContainerId,
- createCommandInfo("exit $" + envKey),
- None(),
- None(),
- state.id,
- ContainerClass::DEBUG);
+ createContainerConfig(
+ createCommandInfo("exit $" + envKey),
+ None(),
+ ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launchNested);
@@ -428,7 +430,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -472,13 +474,12 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ executor,
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -509,11 +510,12 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launchNested = containerizer->launch(
nestedContainerId,
- nestedCommand,
- None(),
- None(),
- state.id,
- ContainerClass::DEBUG);
+ createContainerConfig(
+ nestedCommand,
+ None(),
+ ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launchNested);
@@ -549,7 +551,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -596,13 +598,17 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ executor,
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ slave::paths::getForkedPidPath(
+ slave::paths::getMetaRootDir(flags.work_dir),
+ state.id,
+ executor.framework_id(),
+ executor.executor_id(),
+ containerId));
AWAIT_ASSERT_TRUE(launch);
@@ -626,11 +632,12 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launchNested = containerizer->launch(
nestedContainerId,
- createCommandInfo("ls " + filename),
- None(),
- None(),
- state.id,
- ContainerClass::DEBUG);
+ createContainerConfig(
+ createCommandInfo("ls " + filename),
+ None(),
+ ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launchNested);
@@ -675,11 +682,12 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launchNested = containerizer->launch(
nestedContainerId,
- createCommandInfo("ls " + filename),
- None(),
- None(),
- state.id,
- ContainerClass::DEBUG);
+ createContainerConfig(
+ createCommandInfo("ls " + filename),
+ None(),
+ ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launchNested);
@@ -711,7 +719,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -735,13 +743,12 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -764,14 +771,13 @@ TEST_F(NestedMesosContainerizerTest,
// 6) `ps`
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo(
+ createContainerConfig(createCommandInfo(
"PS_LINES=`ps | wc -l`;"
"if [ ${PS_LINES} -ne 6 ]; then"
" exit ${PS_LINES};"
- "fi;"),
- None(),
- None(),
- state.id);
+ "fi;")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -790,15 +796,16 @@ TEST_F(NestedMesosContainerizerTest,
// We expect to see much more than 6 lines of output from `ps`.
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo(
- "PS_LINES=`ps | wc -l`;"
- "if [ ${PS_LINES} -le 6 ]; then"
- " exit ${PS_LINES};"
- "fi;"),
- None(),
- None(),
- state.id,
- ContainerClass::DEBUG);
+ createContainerConfig(
+ createCommandInfo(
+ "PS_LINES=`ps | wc -l`;"
+ "if [ ${PS_LINES} -le 6 ]; then"
+ " exit ${PS_LINES};"
+ "fi;"),
+ None(),
+ ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -832,7 +839,7 @@ TEST_F(NestedMesosContainerizerTest,
Owned<MasterDetector> detector = master.get()->createDetector();
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> _containerizer =
MesosContainerizer::create(flags, true, &fetcher);
@@ -914,15 +921,16 @@ TEST_F(NestedMesosContainerizerTest,
// image (but not on the host filesystem).
Future<bool> launch = containerizer->launch(
nestedContainerId,
- createCommandInfo(
- "LINES=`ls -la /etc/alpine-release | wc -l`;"
- "if [ ${LINES} -ne 1 ]; then"
- " exit 1;"
- "fi;"),
- None(),
- None(),
- statusRunning->slave_id(),
- ContainerClass::DEBUG);
+ createContainerConfig(
+ createCommandInfo(
+ "LINES=`ls -la /etc/alpine-release | wc -l`;"
+ "if [ ${LINES} -ne 1 ]; then"
+ " exit 1;"
+ "fi;"),
+ None(),
+ ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -946,7 +954,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -975,13 +983,14 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(None(), executor, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ slave::paths::getForkedPidPath(
+ slave::paths::getMetaRootDir(flags.work_dir),
+ state.id,
+ executor.framework_id(),
+ executor.executor_id(),
+ containerId));
AWAIT_ASSERT_TRUE(launch);
@@ -998,11 +1007,12 @@ TEST_F(NestedMesosContainerizerTest,
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("sleep 1000"),
- None(),
- None(),
- state.id,
- ContainerClass::DEBUG);
+ createContainerConfig(
+ createCommandInfo("sleep 1000"),
+ None(),
+ ContainerClass::DEBUG),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -1062,7 +1072,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_DestroyNested)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1086,13 +1096,12 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_DestroyNested)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -1103,10 +1112,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_DestroyNested)
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("sleep 1000"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("sleep 1000")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -1141,7 +1149,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_DestroyParent)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1165,13 +1173,12 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_DestroyParent)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -1182,10 +1189,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_DestroyParent)
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("sleep 1000"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("sleep 1000")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -1218,7 +1224,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_ParentExit)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1260,13 +1266,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_ParentExit)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(None(), executor, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
close(pipes[0]); // We're never going to read.
@@ -1279,10 +1281,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_ParentExit)
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("sleep 1000"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("sleep 1000")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -1317,7 +1318,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_ParentSigterm)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1361,13 +1362,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_ParentSigterm)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(None(), executor, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -1380,10 +1377,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_ParentSigterm)
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("sleep 1000"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("sleep 1000")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -1427,7 +1423,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_RecoverNested)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1456,13 +1452,14 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_RecoverNested)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(None(), executor, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ slave::paths::getForkedPidPath(
+ slave::paths::getMetaRootDir(flags.work_dir),
+ state.id,
+ executor.framework_id(),
+ executor.executor_id(),
+ containerId));
AWAIT_ASSERT_TRUE(launch);
@@ -1479,10 +1476,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_RecoverNested)
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("sleep 1000"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("sleep 1000")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -1557,7 +1553,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_RecoverLauncherOrphans)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1608,7 +1604,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_RecoverNestedLauncherOrphans)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1637,13 +1633,14 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_RecoverNestedLauncherOrphans)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(None(), executor, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ slave::paths::getForkedPidPath(
+ slave::paths::getMetaRootDir(flags.work_dir),
+ state.id,
+ executor.framework_id(),
+ executor.executor_id(),
+ containerId));
AWAIT_ASSERT_TRUE(launch);
@@ -1730,7 +1727,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1802,7 +1799,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1831,13 +1828,14 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(None(), executor, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ slave::paths::getForkedPidPath(
+ slave::paths::getMetaRootDir(flags.work_dir),
+ state.id,
+ executor.framework_id(),
+ executor.executor_id(),
+ containerId));
AWAIT_ASSERT_TRUE(launch);
@@ -1941,7 +1939,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -1970,13 +1968,14 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- SlaveID(),
+ createContainerConfig(None(), executor, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ slave::paths::getForkedPidPath(
+ slave::paths::getMetaRootDir(flags.work_dir),
+ state.id,
+ executor.framework_id(),
+ executor.executor_id(),
+ containerId));
AWAIT_ASSERT_TRUE(launch);
@@ -1993,10 +1992,9 @@ TEST_F(NestedMesosContainerizerTest,
launch = containerizer->launch(
nestedContainerId1,
- createCommandInfo("sleep 1000"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("sleep 1000")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2101,7 +2099,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -2187,7 +2185,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_WaitAfterDestroy)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -2198,8 +2196,6 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_WaitAfterDestroy)
Owned<MesosContainerizer> containerizer(create.get());
- SlaveID slaveId = SlaveID();
-
// Launch a top-level container.
ContainerID containerId;
containerId.set_value(UUID::random().toString());
@@ -2209,13 +2205,12 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_WaitAfterDestroy)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- slaveId,
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true);
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2226,10 +2221,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_WaitAfterDestroy)
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("exit 42"),
- None(),
- None(),
- slaveId);
+ createContainerConfig(createCommandInfo("exit 42")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2278,7 +2272,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_AgentEnvironmentNotLeaked)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -2302,13 +2296,12 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_AgentEnvironmentNotLeaked)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2336,10 +2329,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_AgentEnvironmentNotLeaked)
launch = containerizer->launch(
nestedContainerId,
- command,
- None(),
- None(),
- state.id);
+ createContainerConfig(command),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2368,7 +2360,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_LaunchNestedThreeLevels)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -2392,13 +2384,12 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_LaunchNestedThreeLevels)
Future<bool> launch = containerizer->launch(
level1ContainerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2408,10 +2399,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_LaunchNestedThreeLevels)
launch = containerizer->launch(
level2ContainerId,
- createCommandInfo("sleep 1000"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("sleep 1000")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2421,10 +2411,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_LaunchNestedThreeLevels)
launch = containerizer->launch(
level3ContainerId,
- createCommandInfo("exit 42"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("exit 42")),
+ map<string, string>(),
+ None());
Future<Option<ContainerTermination>> wait =
containerizer->wait(level3ContainerId);
@@ -2451,7 +2440,7 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_Remove)
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -2475,13 +2464,12 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_Remove)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2492,10 +2480,9 @@ TEST_F(NestedMesosContainerizerTest, ROOT_CGROUPS_Remove)
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("true"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("true")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2542,7 +2529,7 @@ TEST_F(NestedMesosContainerizerTest,
flags.launcher = "linux";
flags.isolation = "cgroups/cpu,filesystem/linux,namespaces/pid";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -2566,13 +2553,12 @@ TEST_F(NestedMesosContainerizerTest,
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- createExecutorInfo("executor", "sleep 1000", "cpus:1"),
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(
+ None(),
+ createExecutorInfo("executor", "sleep 1000", "cpus:1"),
+ directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to test not checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -2583,10 +2569,9 @@ TEST_F(NestedMesosContainerizerTest,
launch = containerizer->launch(
nestedContainerId,
- createCommandInfo("true"),
- None(),
- None(),
- state.id);
+ createContainerConfig(createCommandInfo("true")),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
http://git-wip-us.apache.org/repos/asf/mesos/blob/b194d5a6/src/tests/containerizer/volume_sandbox_path_isolator_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/containerizer/volume_sandbox_path_isolator_tests.cpp b/src/tests/containerizer/volume_sandbox_path_isolator_tests.cpp
index 5f4e382..3228b9a 100644
--- a/src/tests/containerizer/volume_sandbox_path_isolator_tests.cpp
+++ b/src/tests/containerizer/volume_sandbox_path_isolator_tests.cpp
@@ -54,7 +54,7 @@ TEST_F(VolumeSandboxPathIsolatorTest, SharedVolume)
slave::Flags flags = CreateSlaveFlags();
flags.isolation = "volume/sandbox_path";
- Fetcher fetcher;
+ Fetcher fetcher(flags);
Try<MesosContainerizer*> create = MesosContainerizer::create(
flags,
@@ -80,13 +80,9 @@ TEST_F(VolumeSandboxPathIsolatorTest, SharedVolume)
Future<bool> launch = containerizer->launch(
containerId,
- None(),
- executor,
- directory.get(),
- None(),
- state.id,
+ createContainerConfig(None(), executor, directory.get()),
map<string, string>(),
- true); // TODO(benh): Ever want to check not-checkpointing?
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -110,10 +106,11 @@ TEST_F(VolumeSandboxPathIsolatorTest, SharedVolume)
launch = containerizer->launch(
nestedContainerId1,
- createCommandInfo("touch parent/file; sleep 1000"),
- containerInfo,
- None(),
- state.id);
+ createContainerConfig(
+ createCommandInfo("touch parent/file; sleep 1000"),
+ containerInfo),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);
@@ -123,11 +120,12 @@ TEST_F(VolumeSandboxPathIsolatorTest, SharedVolume)
launch = containerizer->launch(
nestedContainerId2,
- createCommandInfo(
- "while true; do if [ -f parent/file ]; then exit 0; fi; done"),
- containerInfo,
- None(),
- state.id);
+ createContainerConfig(
+ createCommandInfo(
+ "while true; do if [ -f parent/file ]; then exit 0; fi; done"),
+ containerInfo),
+ map<string, string>(),
+ None());
AWAIT_ASSERT_TRUE(launch);