/SupplierContract

Primary LanguagePythonGNU Affero General Public License v3.0AGPL-3.0

SupplierContract

SupplierContract is a self-assessment tool developed by CASES to help business owners find a right service supplier and obtain a contract information.

The official instance is available here.

Deployment

Requirements

$ sudo apt install gettext postgresql

Set up your Python environment

$ pyenv install 3.9.7 # install Python
$ pyenv global 3.9.7 # make this version default for the whole system
$ pyenv versions # check

Install the application

$ git clone https://github.com/CASES-LU/SupplierContract.git
$ cd SupplierContract/
$ npm install
$ poetry install

Configure and run the application

$ cp csskp/config_dev.py csskp/config_prod.py # configure production settings
$ poetry shell
$ python manage.py collectstatic # copy static files required by Django Admin
$ python manage.py compilemessages # compile the translations
$ python manage.py migrate # need to initialize before create the first user
$ python manage.py createsuperuser --username <username>

Run the application:

$ python manage.py runserver # not for production

For production you can use Gunicorn or mod_wsgi.

Deploy with a Dockerized environment (for development purposes)

$ docker-compose up -d

The server will be listening at http://127.0.0.1:8000.

The login for the Django Admin interface will be admin and the password will be password.

Upgrading the application

$ cd SupplierContract/
$ git pull origin master
$ poetry run python manage.py migrate
$ poetry run python manage.py compilemessages

If you want to update the translations, you must first run:

$ python manage.py makemessages -a --keep-pot # extract the translations

Then you can use a tool like poedit to translate the strings and you can compile with the previously mentioned command.

If you want to re-generate the .pot file:

$ python manage.py makemessages --keep-pot

License

This software is licensed under GNU Affero General Public License version 3

Copyright (C) 2019-2020 SMILE gie securitymadein.lu