Skip to content
Web frontend of Embedded Systems Auto Grader project
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
embed_grader
.gitignore
README.md

README.md

AutoGrader

Web frontend of Embedded Systems Auto Grader project

Install Python 3, Django and missing modules

  • Install Python 3

  • Install Django

    • You might also need to get pip3 by sudo apt-get install python3-pip.
    • pip3 install Django==1.10.2
  • Install missing modules

    • pip3 install numpy
    • pip3 install psutil
    • pip3 install requests
    • pip3 install django-datetime-widget
    • pip3 install django-widget-tweaks
    • pip3 install django-bootstrap3
    • pip3 install django-ipware
    • pip3 install django-guardian
    • pip3 install django-chartjs
    • pip3 install django-ckeditor
    • pip3 install django-sslserver
  • If you are using PostgreSQL as your database

    • pip3 install psycopg2
  • Install web server components for deployment

    • sudo pip3 install uwsgi
    • sudo apt-get install nginx

Configuration

  • TODO: add these files as samples
    • nginx config file
    • uwsgi config file
    • django settings file

Run the Project

  • Start the web server:
    • If you want to use the default Django provided web server, please change directory to <AutoGrader_folder>/embed_grader and then run the command python3 manage.py runsslserver.
    • If you are pushing your server in production mode to pursue performance, please use uWSGI + nginx to start the server.
  • Execute the grading scheduler:
    • Please schedule a cron job to execute the scheduler: pythong3 manage.py grading_d. The recommended frequency is every minute. (It is to resume the scheduler when it crashed)

Documentation

You can’t perform that action at this time.