Preparing Submit at the Start of Term
See also
PreparingSubmitForEachAssignment.
Configuration of =.submitrc
The first step is to allow the
submit
command to accept submissions that meet
our expectations. The file
/u/csXXX/.submitrc allows a fair amount of configuration.
At the start of term, it should be verified that this contains the settings that
are expected. Most of these are standard for every course (such as the location
of various marking, handin, etc. directories referenced below; see
SampleSubmitrc for a more comprehensive list), but the following
should be checked for explicitly:
submit_version=2
merge="no"
file_filter=/u/isg/bin/file_filter
You should also check for any appropriate
FinalFilterScripts for your course.
If you need to modify it, make sure it's writeable first;
chmod u+w /u/csXXX/.submitrc
The submit_version ensures we are using the correct version of the command,
setting
merge="no" will let the filter script operate correctly in
some particular circumstances (for example, allowing only one of
X.ss and
X.scm to exist) and make every submission match the files in the directory
exactly (which is more intuitive with the Odyssey model), and setting
file_filter
enables the default ISG filtering commands (which may be
overridden), as well as enabling the submission logs.
Making sure .submitrc and .rstrc are readable.
This is required to be readable by any student, if public test are being run or a subversion final_script is in place. So,
you should issue the commands
chgrp csXXX /u/csXXX/.submitrc
chmod 444 /u/csXXX/.submitrc
chmod 444 /u/csXXX/.rstrc
This can be 440 instead if these files will never be run in a student context, but 444 is safer.
Note these permissions are likely safe once the above edit(s) has been made,
as these files likely will not need to change in the middle of a term.
Creating a log folder with proper permissions
The standard ISG file filter script will create logs of student submission attempts.
However, some special settings are required in order for this to work correctly.
The directory
/u/csXXX/course/submitlog must exist with permissions
710 and in the group
csXXX.
The reason that these permissions are needed and that the script does not create the
directory itself is that the filtering script is run with
the effective group of the course account, but still as the user who ran submit. As such,
while we require that students be able to write their own log files while effectively
in the course group (as set up per assignment in the "For Every Assignment" section below), we want to restrict the amount they are able to do.
There is a chance this folder may still contain subfolders with information from previous terms.
If so, you should check if anything that is desired to be archived has been (although given the space usage, this
will likely only be in very special circumstances), and then delete the old subfolders before opening
submissions for the current term.