Skip to content

parkinson2012/rag

 
 

Repository files navigation

Autograder Usage with edX

Berkeley folks: there is an AMI (id ami-df77a8b6) that includes latest version of the autograder.

Other folks: the autograder code is at github:saasbook/rag.  

1. Launch an EC2 instance (small is fine) with autograder AMI
2. Or

NOTE: Somebody should make a new AMI with the updated connection code, and enabled to pull from the saasbook repos
3. hw6Grader1 has the latest version of rag, so move the content from it to the new instance. NOTE: You might want to move the logs before you copy as they take up a lot of space.
Configuration
There are two files which control the autograder. They are config/autograders.yml and config/conf.yml

conf.yml includes the following:

live:
  queue_uri: queue uri here #this can change later
  autograders_yml: ./config/autograders.yml
  django_auth:
    username: ‘USERNAME’
    password: PASSWORD
  user_auth:
    user_name: ‘USER’
    user_pass: ‘PASSWORD’'
  halt: false # default: true, exit when all submission queues are empty
  sleep_duration: 30 

“live” is the name that will be given on the command line when calling the autograder command.

The rest of the information should be filled in appropriately. 
NOTE: autograders_yml gives the path from the rag/ directory

autograders.yml describes the actual autograder that will be running

An example is:
assign-6-queue:
  name: "BerkeleyX-cs169x-p3"
  type: HW5Grader
  due:  20121217120100
  grace_period: 0
  parts:
    assign-2-part-1:
      uri: ./hw6.yml
      type: MigrationGrader

name is the name of the queue that will be pulled from, this must match what edX is submitting assignments to.

due: is in YYYYMMDDHHMMSS format
parts is used to describe the parts of each assignment
uri: is a path to the solutions from the rag base directory
type: is the type of autograder that will be used to grade the assignment
grace period is used to give late credit, this should be refactored further to allow specification for late penalties in this config file.

To run the autograder connection program:
while true ; do ./run_edx_client.rb live ; done

Just because the grader can crash, this starts it up again.

More to come.





About

Ruby Auto-grader

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors