The general configuration setting of the module is at "Site administration -> Modules -> Activities." like any other activity. This configuration provides three types of characteristics: resource limits, servers jail and submission discard period.
The limits set here are applied as a maximum for any VPL. Although an instance of VPL had set a higher threshold applies if the minor. The limits should be chosen in the light of the most extreme case of resource consumption. The limits can be set are:
- Maximum size of each file upload in submission.
- Maximum execution time. Applicable to the compilation and execution.
- Maximum size of an individual file in compilation or execution.
- Maximum usable memory during compilation or execution.
- Maximum number of concurrent processes in compilation or execution.
There are two aspects in this section to configure: the list of servers and the proxy ports range. The list of servers is in a text entry with a line for every server. If the line starts with "#" is a comment. The servers are represented by the URL of the XMLRPC service. URLs have the form "http://server_name:port/path. The proxy provides a link between the jail server and the console for the execution of interactive programs in the browser. To establish the link the proxy needs to be able to open two ports. The two ports are selected from the range set. It is necessary that the firewall server allows access to ports in that range.
The system stores all submissions. Submissions are uploaded files or when you click the Save button in the editor. To remove submissions too close in time you can set a discard period. The system will keep the last one and at least one submission in every discard period.
Each activity must have a name that will identify it from the rest. You should write a short description of the task. This description appears in the lists of tasks VPL. You can limit the submission period and it is possible to set the date from where you can access the task description. If you turn off the period, the task will be available continuously. It is necessary to establish a maximum number of submitted files and limit the maximum size of each file, if you don't set the limit the general module setting will be used.
It is possible to limit access to see activity description, editing and uploading files to a set of networks. Access can also be protected with a key or a combination of key and networks.
The full description allows for a more detailed description of the task. If not set, the short description will be used in place.
You can set the names of the files to be submitted. The files named are mandatory. The rest are up to the maximum number are optional. It is possible to establish an initial content for the files. The initial content will be used when you first enter the editor.
You can write scripts to run or evaluate the submissions. The scripts must be designed to generate a program or script that is called "vpl_execution". The script execution phase is called compilation because the task is carried out normally. In addition to the "scripts", we can add the files necessary to perform the required action.
The script to prepare the execution is called "vpl_run.sh". After running the script, if the file "vpl_execution" exist the execution is transferred to it, in any case, the compilation output is returned to the server. The "vpl_execution" input/output is redirected to a console in your browser.
The script to prepare the evaluation is called "vpl_evaluation.sh". After running the script, if the file "vpl_execution" exist the execution is transferred to it by capturing its output. When finished, the output of the compilation and evaluation are returned to the server.
The server processes the evaluation script output. The assessment proposal will be taken from a line that starts with "Grade :=>>". The grade is taken from the rest of the line as in:
Grade :=>> A
The evaluation comments are taken from lines that start with "Comment :=>>". The comments are the rest of the line as in:
Comment :=>> Text
It is also possible set comments using start/end tags. The final tag is "--|>" and start one is "<|--". Each tag must be on one line, without other text.
Within the comments, you may indicate a title or preformatted text. The titles are lines that begin with "-", preformatted text start with ">".
Options of execution
You can set the scripts that the students can run from the editor. It is possible to run the evaluation scripts when the activity is just submitted. The scripts and files can be based on scripts and files from another VPL instance, which allows for a common configuration for multiple instances. The files, taken from the another instance, can be replaced and code can be added to the scripts..
As in the general settings you can set the limits of the resources used, but only applicable to this activity.
Keeping files during the execution
For security reasons all files involved in the compilation phase, except those submitted by the students are removed before run "vpl_execution". You must indicate if you want a file is not deleted before the execution.
Testing the activity
To test the activity without having to do it available to students, and having to log in as a student, you can use the tests menu. This menu allows access to options for submission view and modification as if the user has the role of student. This allows us to do actions without limits that otherwise could not.