Skip to content
Snippets Groups Projects
Select Git revision
  • main
  • 1.1.0
  • i18n-support
  • v1.0.1-rc12
  • v1.0.1-rc11
  • v1.0.1-rc10
  • v1.0.1.rc9
  • v1.0.1.rc8
  • v1.0.1.rc7
  • v1.0.1.rc6
  • v1.0.1.rc5
  • v1.0.1.rc4
  • v1.0.1.rc3
  • v1.0.1-rc2
  • v1.0.1-rc1
15 results

src

  • Clone with SSH
  • Clone with HTTPS
  • Jeremy's avatar
    #211 btn border-width
    Jeremy authored
    a66024d0
    History
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.

    Polaris Backend

    virtualenv

    First, you should create a virtual environment to start the development:

    $ pip3 install virtualenv
    $ virtualenv env
    $ source env/bin/activate

    Setup environment

    $ pip3 install -r requirements.txt
    $ cp backend/.env.dist backend/.env

    Set all variables in the file backend/.env. TODO Explain each variable The jwt files can be generated using the following command:

    $ cd backend
    $ ssh-keygen -t rsa -b 4096 -m PEM -f jwtRS256.key
    $ openssl rsa -in jwtRS256.key -pubout -outform PEM -out jwtRS256.key.pub

    Dev server

    Adding export to .bashrc

    $ export DJANGO_DEVELOPMENT=true

    or

    $ DJANGO_DEVELOPMENT=true python manage.py runserver

    Migrations and create mongo index

    $ python manage.py migrate
    $ python manage.py create_mongo_index

    Make migration

    $ python manage.py makemigrations

    Create superuser

    $ python3 manage.py createsuperuser

    Create normal user

    Role provider

    $ python3 manage.py create_user provider@polaris.com polaris321 -p

    Role provider, provider manager and analyst

    $ python3 manage.py create_user provider@polaris.com polaris321 -p -m -a

    Role user

    $ python3 manage.py create_user user1@polaris.com polaris321

    Clear database

    $ python3 manage.py sqlflush | python3 manage.py dbshell

    Background jobs

    Start redis server

    $ redis-server

    Start celery worker

    $ celery -A backend worker --loglevel=info

    Start celery worker for scheduled tasks

    $ celery -A backend beat -l info

    API Documentation

    Set DEBUG=True in .env and open http://localhost:[PORT]/redoc/ in browser.

    Create visualization token

    $ curl -X POST 127.0.0.1:8003/api/v1/provider/visualization-tokens/create --data '{"engine_names": ["my_engine", "count_statements_one_week"]}' -H "Content-Type: application/json"

    Polaris Architecture Overview

    Running tests

    $ python manage.py test