Scheduler Plugins¶
This page is unfortunately under construction. If you’re interested in writing your own scheduler plugins, let us know and we’ll make fixing this a top priority.
Scheduler plugins take care of the scheduling part of testing. For this
documentation, we will use the raw
scheduler plugin for examples.
Writing Scheduler Plugins¶
Scheduler plugins require the source code and the .yapsy-plugin file.
Writing the Source¶
At the very least, each scheduler plugin will have a variable class and the actual
The Variables Class¶
Every scheduler plugin module has to have a variables class that is a
child of the SchedulerVariables
class found in schedulers.py
.
class RawVars(SchedulerVariables):
To add a variable, add a method with the same name as the variable and
decorate it with either @sched_var
or dfr_sched_var
(for
deferred variables).
For example, the raw
scheduler has a variable called cpus
. The
method for this variable is as follows:
@var_method
def cpus(self):
"""Total CPUs (includes hyperthreading cpus)."""
return self.sched_data['cpus']