Vridlo/types/Exercise

Exercise is a secondary structure that represents Exercise model, which is used for describing a subtask of the Assembler's task. It is described as:

Number of subtask in the task. Is unique per task in the context of the current assembler.
 * no is natural mandatory write-once

Kind of the subtask. Is one of repo, srpm, delete, copy.
 * kind is string mandatory write-once

Unique name of the application, which the RPM belongs to.
 * app_slug is string mandatory write-once

The subtask committer slug in the context of the current assembler. The slug represents User structure, which is defined by a user's Recital record placed with the kind of login.
 * committer_slug is string mandatory write-once

Task identifier in the context of the current assembler.
 * task_no is natural mandatory write-once

Slug of the source path, which the parent task belongs to.
 * source_path_slug is string mandatory write-once

Name of the source build or resource for the task. If kind is copy, resource is the source for copying the package, and must be in format of :, for example sisyphus:GeoIP-ASNum. If kind is repo, the resourse is external git repo URI, which must match one of the values of repo's filename field. If kind is srpm, the resourse is RPM file name, which must match to one of the presented in the RPM field filename. If kind is delete, the resourse must be blank.
 * resource is string optional write-once

SHA2 224 40-byted checksum over the referenced object matching the field sha in the repo. It must be blank unless the kind is repo.
 * sha is string[56] optional write-once

Array of slugs of the subtask approver people in the context of the current assembler. The slug represents User structure, which is defined by a user's Recital record placed with the kind of login.
 * approver_slugs is string array optional