Contest file format
This is the specification of the contest description. A contest is a directory that is structured this way:
/
+-- turingarena.yaml
+-- task1/
+-- task2/
+-- task3/
| ...
+-- files/
+-- home.html
+-- img/
+-- ...
All the directories except the one starting with _
or .
, and the files/
directory,
are treated as task, whose ID is the directory name. Thus to disable a task you can rename the directory as _task/
The turingarena.yaml
file is structured this way:
title: Very big contest
start: 2020-01-05T14:00:00Z # if not present the contest starts immediately
end: 2020-01-05T18:00:00Z # if not present the contest runs forever
users:
- id: alerighi
name: Alessandro Righi
token: xyejhfdyyujd
- id: cairomassimo
name: Massimo Cairo
token: jfkldyyjjkjk
The ID of the contest is the name of the directory in which the turingarena.yaml
is located.
To change the contest id, simply rename the directory.
This file is named turingarena.yaml
to let you share a contest directory with a CMS contest, making it
compatible with both systems. A contest.yaml
file is simply ignored.
To convert a Italy YAML contest.yaml
file to a TuringArena turingarena.yaml
you can use the command:
turingarena convert
inside the contest directory. A new file turingarena.yaml
will be created.
To import a task, simply launch:
turingarena import [--fresh]
from inside the contest directory. TuringArena will search for a turingarena.yaml
in the parents directory
if not found, so you can launch the command also from inside a task directory.
The improt
command will update the if it already exists,
unless the --fresh
option is specified: in that case the contest will be dropped and reimported from scratch, deleting
all submissions and data.
To export a contest, to port it to other machines, you can use the command:
turingarena export <contest id> [--submissions]
The contest will be exported to a directory named with the ID of the contest.
The option --submissions
will also export the submissions in the directory _submissions/
.
To delete a contest permanently, use the command:
turingarena drop <contest id>