-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/36289/
-----------------------------------------------------------

(Updated Aug. 18, 2015, 12:28 a.m.)


Review request for Aurora and Bill Farner.


Changes
-------

Added support for dynamically chosing an executor via the name provided in the 
thrift call using MapBinder.
Mesos-command executor now pulls command from data field inside of executor 
settings in the thrift call.
Removed executor name as an argument.
Changed code to allow GSON to do the heavy lifting.
Updated test classes to reflect the use of a Map instead of a single instance 
of ExecutorSettings.

Tested using different executors on one scheduler simultaneously using a 
modified version of the client.


Repository: aurora


Description
-------

What was done:
==============
Added support for custom executors in the Scheduler via a config file. 
Removed command line arguments that were moved over to the config file.

Future:
=======
Extending the client to support custom executors and the mesos-executor.

Caveats:
========
This contains initial config file with support for thermos and limited support 
for the mesos commandline executor. Mesos-command line executor needs support 
from the client side in order to function at a better capacity. 

Currently, this uses the current client to launch both tasks, meaning as long 
as the client sends a thrift call, the scheduler will schedule a task, be it a 
mesos-command task with a preconfigured command temporarily set in the config 
file or a custom executor task. 

*Support for custom executors in the client must be added in order to fully 
utilize this feature.*


Diffs (updated)
-----

  api/src/main/thrift/org/apache/aurora/gen/api.thrift 
f792be0ad393072b4a4ec525363e06cfd16b63d0 
  examples/vagrant/executors-config.json PRE-CREATION 
  examples/vagrant/upstart/aurora-scheduler-kerberos.conf 
744b4a35c61e749734e222b3d4cbd296927665aa 
  examples/vagrant/upstart/aurora-scheduler.conf 
789a3a0315e8530880999432aa9b1e7d0f57d1ff 
  src/main/java/org/apache/aurora/scheduler/ResourceSlot.java 
e5953bbf02fc2b08fbdff5c25b5389c5a209dfca 
  src/main/java/org/apache/aurora/scheduler/app/ExecutorConfiguration.java 
PRE-CREATION 
  src/main/java/org/apache/aurora/scheduler/app/ExecutorSettingsLoader.java 
PRE-CREATION 
  src/main/java/org/apache/aurora/scheduler/app/SchedulerMain.java 
e74b36bc5f85e5ae5fbb2e0b1e34961251739d9e 
  src/main/java/org/apache/aurora/scheduler/filter/SchedulingFilterImpl.java 
10389640c87b203386313ab79204ea936272d350 
  src/main/java/org/apache/aurora/scheduler/mesos/ExecutorSettings.java 
b3c913892248e4a9a8111412307463985f5ca97f 
  src/main/java/org/apache/aurora/scheduler/mesos/MesosTaskFactory.java 
ff6eb980292c05e35dcf68104c870a7bef95629a 
  src/main/java/org/apache/aurora/scheduler/preemptor/PreemptionVictim.java 
8162323816aedc711a3af84cd499250b78718ab3 
  
src/main/java/org/apache/aurora/scheduler/preemptor/PreemptionVictimFilter.java 
a0e71e1c74f67b8836e7da5418012f342977f661 
  src/test/java/org/apache/aurora/scheduler/ResourceSlotTest.java 
50e7fc91108993e547869df5b9e5c925fb89a225 
  src/test/java/org/apache/aurora/scheduler/app/ExecutorConfigurationTest.java 
PRE-CREATION 
  src/test/java/org/apache/aurora/scheduler/app/ExecutorSettingsLoaderTest.java 
PRE-CREATION 
  src/test/java/org/apache/aurora/scheduler/app/SchedulerIT.java 
37772d0b75d022f072af10d82d096981680e193f 
  
src/test/java/org/apache/aurora/scheduler/events/NotifyingSchedulingFilterTest.java
 608af1afe6fc27c8c597490e88fed75580076c95 
  
src/test/java/org/apache/aurora/scheduler/filter/SchedulingFilterImplTest.java 
b2327a47374d81b59886c1e4575ded8340322db7 
  src/test/java/org/apache/aurora/scheduler/mesos/MesosTaskFactoryImplTest.java 
02fe96445148d1e14d85dc7a6fa386d84a8a8c70 
  src/test/java/org/apache/aurora/scheduler/mesos/TaskExecutors.java 
6a80503aeb2058e8f8065285adc151197d2d14d6 
  src/test/java/org/apache/aurora/scheduler/preemptor/ClusterStateImplTest.java 
a1ac922d471013779710e02c0c9ca9f84b506807 
  
src/test/java/org/apache/aurora/scheduler/preemptor/PendingTaskProcessorTest.java
 b9cb5bfe9f89a8bfdb96b6eeb1998ed105963484 
  
src/test/java/org/apache/aurora/scheduler/preemptor/PreemptionVictimFilterTest.java
 66f20c6a63b331353c467cde5521f21e4df49e2d 
  src/test/java/org/apache/aurora/scheduler/preemptor/PreemptionVictimTest.java 
09380f95a7d9405f770513db35d2a45d23d89b61 
  src/test/java/org/apache/aurora/scheduler/preemptor/PreemptorImplTest.java 
b07ff7babd217dac4153831a0d78325bcb72b306 
  
src/test/resources/org/apache/aurora/scheduler/app/executor-settings-example.json
 PRE-CREATION 
  
src/test/resources/org/apache/aurora/scheduler/app/executor-settings-mesos-command-example.json
 PRE-CREATION 
  
src/test/resources/org/apache/aurora/scheduler/app/executor-settings-thermos-no-observer.json
 PRE-CREATION 

Diff: https://reviews.apache.org/r/36289/diff/


Testing
-------

Ran jenkins build test, passed all tests, code style checks, findbugs check, 
and PMD.


Thanks,

Renan DelValle

Reply via email to