Updated Assignments (markdown)

master
Petr Stefan 9 years ago
parent 5e901f71ba
commit b5c917a0b8

@ -1,11 +1,7 @@
# Assignments # Assignments overview
Assignments are programming tasks that can be tested by a worker after a user Assignments are programming tasks that can be tested by a worker after a user
submits their solution. submits their solution. An assignment is described by a YAML file that contains information on how to
## Configuration format
An assignment is described by a YAML file that contains information on how to
build, run and test it. build, run and test it.
### Terminology ### Terminology
@ -62,7 +58,8 @@ These parameters are stored in global, structured parameter space. I would sugge
Input parameters have two sources, some defaults are present in the configuration of the worker, another set is provided in the configuration of the job. These sets are merged, job config has a priority. Input parameters have two sources, some defaults are present in the configuration of the worker, another set is provided in the configuration of the job. These sets are merged, job config has a priority.
Parameters are only read by the tasks (they can be used in task parameters). Some simple syntax needs to be used for evaluation of parameter expressions -- e.g., ("${params.tests[1].memoryLimit}"). _**TODO:** analysis required -- how complex expressions do we really need_ Parameters are only read by the tasks (they can be used in task parameters). Some simple syntax needs to be used for evaluation of parameter expressions -- e.g., ("${params.tests[1].memoryLimit}"). _Parameters should be stored in worker's global namespace. Task configuration can make references to this structure. Validity should be checked before executing first task from the job. In this structure is only writable section "results" - here are written achieved memory and time limits of each task. Whole structure is send to WebApp with all logs._
_**TODO:** analysis required -- how complex expressions do we really need_
### Logs ### Logs
There is one general (mandatory) log, where the job progress is logged. Each row corresponds to one task and it holds only the task name, task exit code (or some other indication whether the task ended OK or not), and optionally things like consumed memory and time. There is one general (mandatory) log, where the job progress is logged. Each row corresponds to one task and it holds only the task name, task exit code (or some other indication whether the task ended OK or not), and optionally things like consumed memory and time.
Loading…
Cancel
Save