Skip to content

open-education-hub/vmchecker-next-api

Repository files navigation

VMChecker Next API

The VMChecker API is built on Django. The project is made up of two parts, the API that exposes the URLs for Moodle, and a second process, that submits assignments to Gitlab, polls for the result or retrieves the output/assignment archive. It uses the Postgres database as a task queue.

Requirements

  1. python3 >= 3.8
  2. pipenv (pip3 install pipenv --user. See docs)
  3. docker (See official docker docs)
  4. A Moodle installation with the vmchecker plugin installed. See the vmchecker-next docs on how to set up a development environment. If you do not plan on working on the Moodle plugin, follow the following workshop tutorial on setting up a Moodle instance with the vmchecker plugin installed (Tutorial).
  5. Create a test assignment on Gitlab.com by following the TA handbook. You will only require the private git repository. You can directly fork the following template assignment.

Setting up the development environment

  1. After cloning the repository install the python packages using pipenv install.
  2. cp ./etc/.env.development .env
  3. Customize the .env file with the correct information
  4. Start up the development stack pipenv run docker-compose-dev up. It will start a Minio and Postgres instance under the 'api' namespace

Running tests

pipenv run pytest test/

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published