CodeGradX is a grading infrastructure
- where students submit programs to solve exercises and these programs are mechanically graded,
- where authors deploy exercises and propose them to students,
- where teachers may follow the progress of a cohort of students.
infrastructure is operated via REST protocols. To ease its use,
to operate the CodeGradX infrastructure. This library is contained in
codegradxlib Node module and can be operated from a browser.
CodeGradX may also be operated from command line using the
codegradxagent Node module. By default,
codegradxlib is configured
to use the real constellation of CodeGradX servers howwver authors may
use a virtual machine, named VMauthor
to write and check their exercises with their own computing resources.
codegradxvmauthor Node module reconfigures
use this virtual machine.
To sum up: this module is the configuration of CodeGradXagent for VMauthor. See also a more detailed documentation of codegradxagent Node module.
npm install codegradxvmauthor
When VMauthor runs, you should memorize the IP number attributed to
that VM, this is required to access the VM. You may alternatively
/etc/hosts file and add a line defining
vmauthor.codegradx.org to be that IP number. Something like
192.168.133.201 vmauthor vmauthor.codegradx.org
If this hostname is not defined, you should use the
--ip=192.168.133.201 option in your invocations of the
You may access the VMauthor virtual machine when browsing
http://vmauthor/, interactively submit new exercises and test them
as a student. However you may also prefer to script these interactions
in which case, your script requires some credentials to access VMauthor.
Credentials are JSON files that may be fetched from VMauthor. These files define a user name and a cookie (valid a few hours):
wget -O fw4ex-author.json http://vmauthor/fw4exjson/0wget -O fw4ex-student1.json http://vmauthor/fw4exjson/1
After getting these credentials you may use them with the
--credentials=fw4ex-student1.json option. Credentials are limited in
time so you may additionally specify
--update-credentials to refresh
Students may submit answers to exercises. Only authors may create new
exercises and mark batches of students' answers. See directory
shtests/ for examples of use.