Installation

This section describes how to get DRMAAtic up and running on your system.

Prerequisites: - Linux environment - SLURM with DRMAA library (or the provided Docker setup) - Python 3.8+ or Docker Engine

Manual Installation

  1. Clone the repository and install Python dependencies:

git clone https://github.com/BioComputingUP/DRMAAtic.git
cd DRMAAtic
pip install -r requirements.txt

Ensure you have SLURM installed on the host and its DRMAA library available (the drmaa Python package will interface with it).

  1. Configure the database: By default DRMAAtic uses MySQL/MariaDB. Set up a database and update the Django settings (or .env files in server/settings/) with the DB credentials. For example, create a MySQL database named drmaatic and update server/settings/.env accordingly.

  2. Run database migrations to set up the schema:

python manage.py makemigrations
python manage.py migrate

This will create the necessary tables for tasks, users, etc. in the database.

  1. Create a superuser account for the Django admin (to manage tasks, etc.):

python manage.py createsuperuser

Follow the prompts to set up an admin username and password

  1. Start the DRMAAtic server:

python manage.py runserver

By default, this will run the development server at http://127.0.0.1:8000/. You should now have the DRMAAtic API available (though without a running SLURM, job submission will not function).

Note

Accessing the Web API: Once running, the API endpoints can be accessed via http://<server>/api/... (if using the development server or appropriate host/port for Docker). You can also log into the Django admin UI at http://<server>/admin/ using the superuser credentials, to configure tasks and view job records.