/1327

A student representatives website

Primary LanguagePythonOtherNOASSERTION

1327

Build Status Code Health Coverage Status

A student representatives website. This is project is live! You can see a working instance of 1327 here!

Development

To be able to contribute to 1327, one needs to get the source code with all dependencies. Please note, that submodules for bootstrap, font-awesome, bootstrap-markdown and various puppet modules are in use:

git clone https://github.com/fsr-itse/1327.git
cd 1327
git submodule update --init

Freshly created code needs to be tested - besides our use of unit tests, linting and continous integration, it is possible to run the application in a non-production environment using Vagrant or a Virtual Environment.

Vagrant

One can simply set up an execution environment using vagrant:

vagrant up --provision

At that point, one created a vagrant box, running a PostgreSQL database server, Apache web server and the Django application. The contents are available on the default port 8000, which allows one to access the website at http://localhost:8000. To create a new superuser for the application, execute vagrant ssh in the project directory and trigger the django user management system:

./manage.py createsuperuser --username=root

Virtual Environment

Another way of executing this django application is the use of a virtual python environment. This way bypasses the needs for a virtual machine and simplifies the life with multiple python versions installed:

virtualenv -p /usr/bin/python3 env
source env/bin/activate
pip install -r requirements.txt
pip install -r requirements-test.txt
python manage.py migrate
python manage.py createsuperuser --username=root
python manage.py runserver 0.0.0.0:8000

Deployment

For deploying on a single machine 1327 you'll need to install all requirements from requirements-deploy.txt, and you can follow these instructions, for setting up a webserver and starting all scripts using a Process Control System, if you like.

License

The software is licensed under the terms of the MIT license. Please note, that non-MIT-licensed contents might be part of this repository.