ISG Scripts Man Pages
This page contains man pages for some of ISG's scripts. These man pages used to be at
https://www.student.cs.uwaterloo.ca/~isg/, but that website was deleted and the man pages are here now.
Bittersuite
BitterSuite is a rigid, extendable testing framework which was originally designed to run on top of
RST, but can also be set up to run within Marmoset or other testing frameworks. The goal of this suite is to provide a reasonable amount of testing flexibility while not requiring most tutors to do very much scripting, focusing instead on designing comprehensive tests.
Course Account
This deals in particular with commands that assist with the usage of the course account. The
login program provides a standard set of behaviour for course accounts of ISG-supported courses. The
checkquota command provides feedback about a course account's diskquota. The
validateSite command provides feedback about the course website's validation.
Group Management
These scripts help courses deal with group management. Documentation is not yet available for
group_mgr-process_group_txt_submissions,
group_mgr, or
group_mgr-export.
Marmoset
Currently, this only consists of a script that will wrap
RST assignment marking suites in a fashion that can be understood by Marmoset. In the future, it may also consist of tools that allow interacting with Marmoset via the command line; for example, to upload testing zip files or solutions, or to retrieve student submissions.
Moss
Moss is a utility that does statistical matching between pairs of assignment submissions. A set of programs wrap around moss, providing output filtering and making the analysis of the output more straightforward.
Newsgroup
These utilities are useful for performing newsgroup-related tasks.
Perl
There are several perl modules on the ISG account; the isg setup program automatically puts them in perl's search path so they can be found be any perl program that wants to use them. Several shell programs make use of these modules in ways that may give more convenient access, but the modules may also be accessed directly.
Basic/Public Tests
These utilities deal in particular with a public test system that makes use of the
RST and mailOut commands to perform testing and handle mailouts to students. The public tests will be executed by a number of testing daemons running on each server listed in the
server_list
file.
This section documents the
RST tools. The front-end called from the course account are the commands
rst,
rsta, and
distrst. These in turn make use of
runTests and
computeMarks, which are utilities supplied by course staff in a predetermined location for each assignment and testing suite. The
computeMarks command has a number of helper utilities available to it which course staff should make use of to generate output for students and to keep records:
keepFile,
printFile,
deProcessFile and
writeToMarkList.
Output can then be mailed to students with
mailOut or printed out for marker feedback with
printOut.
Submit
These utilities are useful for manipulating the
submit command. The
file_filter allows a simple way to reject files that are being submitted and provide feedback to the student indicating why. The
deadline or
makelateclone commands should be called from a
cron or
at scheduled job when submissions are being cut off; which command is used will depend on the needs of the course. The
unlate command may be useful if making direct use of
submit's builtin late-handling capabilities, and
submitters gives a list of all students who submitted all time (which, in most courses, is the same as a list of all students who submitted).
Samples
Others
These are miscellaneous utilities, including utilities for getting information about the current term or for locking files.