reveal makes the following assumptions:
revealwill be run from thedistdirectory which contains the exam code and aadmindirectory- the sticky bit on
distandadminis set, andhints(and all files inside it) is owned by, and only readable/writable byroot
To set up for a new exam environment:
- Change the appropriate
TODOs insrc/main.rs(notably, the password that's used for the zip archive, the relevant files to zip, the list of hint file names). - install
revealon the test machines, making sure that it runs as a privileged user. - Set up the exam directory with the directory structure
dist/
- exam/ # all exam code
- admin/ # privileged directory with sticky bit set
- - hints/ # privileged directory containing hint files
- - hint.record # privileged file with contents "0" * num_hints
- - transactions.log # privileged empty file
- Fill the
admin/hintsdirectory with the hint files. The name of each hint file should be the same as the same number of the exam question it corresponds to and should contain the text of the hint.