MCPcopy Create free account
hub / github.com/apache/mesos / create

Method create

src/tests/cluster.cpp:426–738  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

424
425
426Try<process::Owned<Slave>> Slave::create(
427 MasterDetector* detector,
428 const slave::Flags& flags,
429 const Option<string>& id,
430 const Option<slave::Containerizer*>& containerizer,
431 const Option<slave::GarbageCollector*>& gc,
432 const Option<slave::TaskStatusUpdateManager*>& taskStatusUpdateManager,
433 const Option<mesos::slave::ResourceEstimator*>& resourceEstimator,
434 const Option<mesos::slave::QoSController*>& qosController,
435 const Option<mesos::SecretGenerator*>& secretGenerator,
436 const Option<Authorizer*>& providedAuthorizer,
437 const Option<PendingFutureTracker*>& futureTracker,
438 const Option<Owned<slave::CSIServer>>& csiServer,
439 bool mock)
440{
441 process::Owned<Slave> slave(new Slave());
442
443 // TODO(benh): Create a work directory if using the default.
444
445 slave->flags = flags;
446 slave->detector = detector;
447
448 // If the garbage collector is not provided, create a default one.
449 if (gc.isNone()) {
450 slave->gc.reset(new slave::GarbageCollector(flags.work_dir));
451 }
452
453 // If the flag `--volume_gid_range` is specified, create a volume gid manager.
454 slave::VolumeGidManager* volumeGidManager = nullptr;
455
456#ifndef __WINDOWS__
457 if (flags.volume_gid_range.isSome()) {
458 Try<slave::VolumeGidManager*> _volumeGidManager =
459 slave::VolumeGidManager::create(flags);
460
461 if (_volumeGidManager.isError()) {
462 return Error(
463 "Failed to create volume gid manager: " + _volumeGidManager.error());
464 }
465
466 volumeGidManager = _volumeGidManager.get();
467 }
468#endif // __WINDOWS__
469
470 // If the future tracker is not provided, create a default one.
471 if (futureTracker.isNone()) {
472 Try<PendingFutureTracker*> _futureTracker = PendingFutureTracker::create();
473 if (_futureTracker.isError()) {
474 return Error(
475 "Failed to create pending future tracker: " + _futureTracker.error());
476 }
477
478 slave->futureTracker.reset(_futureTracker.get());
479 }
480
481 // If the secret generator is not provided, create a default one.
482 if (secretGenerator.isNone()) {
483 SecretGenerator* _secretGenerator = nullptr;

Callers 7

TEST_PFunction · 0.45
TEST_FFunction · 0.45
TEST_FFunction · 0.45
getOperationMessageMethod · 0.45
getOperationMessageMethod · 0.45
TEST_FFunction · 0.45
TESTFunction · 0.45

Calls 15

permissionsFunction · 0.85
generateFunction · 0.85
NoneClass · 0.85
createDomainSocketFunction · 0.85
getOrElseMethod · 0.80
errorMethod · 0.65
createFunction · 0.50
ErrorFunction · 0.50
readFunction · 0.50
addressFunction · 0.50
isNoneMethod · 0.45

Tested by

no test coverage detected