public static function fromMachine($machine_id, $mode_id = 0)
 {
     $retrigger = new RetriggerController();
     $mode = new Mode($mode_id);
     $qTask = mysql_query("SELECT * FROM control_tasks WHERE machine_id = {$machine_id}") or die(mysql_error());
     while ($task = mysql_fetch_object($qTask)) {
         if (!($mode_id == 0 || $task->mode_id == 0 || $task->mode_id == $mode_id)) {
             continue;
         }
         if ($retrigger->unit_id != 0 && $retrigger->unit_id != $task->control_unit_id) {
             throw new Exception("Only one machine allowed.");
         }
         $retrigger->unit_id = $task->control_unit_id;
         $available_at = 0;
         if ($task->delay) {
             $available_at = $task->last_scheduled + $task->delay;
         }
         $task = new ManipulateTask($task->task, $available_at);
         if ($mode_id != 0) {
             $task->update_modes(array($mode->mode()));
         }
         $retrigger->tasks[] = $task;
     }
     return $retrigger;
 }
示例#2
0
$task = new ManipulateTask($task_text);
assert($task->engines() == array("firefox", "edge"));
assert($task->modes() == array("browser_win10", "edge", "jmim"));
$task->update_engines(["firefox"]);
assert($task->engines() == array("firefox"));
assert($task->modes() == array("browser_win10", "jmim"));
$task->update_modes(["jmim"]);
assert($task->engines() == array("firefox"));
assert($task->modes() == array("jmim"));
$task = new ManipulateTask($task_text);
$task->update_modes(["browser_win10"]);
assert($task->engines() == array("firefox"));
assert($task->modes() == array("browser_win10"));
$task_text = '

python build.py -c 32bit -s mozilla -o ~/awfy-new/repos/mozilla-inbound-32/
python build.py -c 32bit -s v8 -o ~/awfy-new/repos/v8-32/

python submitter.py -c -m 28 -o /tmp/submitter_id
python execute.py --submitter-session /tmp/submitter_id -b shell.sunspider -b shell.octane -b shell.kraken -b shell.assorted -b shell.dart -e ~/awfy-new/repos/mozilla-inbound-32/ -e ~/awfy-new/repos/v8-32/ -s remote -c default -c unboxedobjects -c turbofan -c testbedregalloc
python execute.py --submitter-session /tmp/submitter_id -b shell.asmjsapps -b shell.asmjsmicro -e ~/awfy-new/repos/mozilla-inbound-32/ -e ~/awfy-new/repos/v8-32/ -s remote -c default -c unboxedobjects -c turbofan -c testbedregalloc -c noasmjs
python submitter.py -f -s /tmp/submitter_id

';
$task = new ManipulateTask($task_text);
$task->update_engines(["firefox"]);
$task->update_modes(["jmim"]);
$task->update_benchmarks(["shell.asmjsapps"]);
assert($task->engines() == array("firefox"));
assert($task->modes() == array("jmim"));
assert($task->benchmarks() == array("shell.asmjsapps"));