# PaTT Project and Teamorganisation Tool ---- ## Installation ---- ### Get the repository ####Go to the subfolder, where you want to create your new PaTT-Application (here ~/tmp) cd ~/tmp #### Clone the repository git clone https://git.mount-mockery.de/application/patt.git #### Change to your repository and initialise it completely cd patt git submodule init git submodule update ### Create your virtual environment #### Create python3 environment virtualenv -p /usr/bin/python3 venv #### Activate the environment source activate #### Upgrade all outdated packages pip list -o --format freeze|cut -d '=' -f 1 | xargs pip install $1 --upgrade #### Install PaTT Requirements pip install -r requirements.txt ---- ## Configuration and Initialisation of PaTT ---- ### Create your config File #### Copy the config example cp config_example/config.py . chmod 700 config.py #### Set a secret key Edit config.py and add a SECRET_KEY. Generate the secret e.g by executing the following command: python manage.py At the End of the error message you'll see a random secret: KeyError: "You need to create a config.py file including at least a SECRET_KEY definition (e.g.: --> **'HERE IS THE RANDOM SECRET ;-)'** <--)." ### Create your initial database and first user for Patt python manage.py migrate python manage.py createsuperuser ### Finalise Configuration Now there are two ways to finalise your configuration. The first way is for a test or development system. The other is for a production System. 1. **Test or development System:** Edit config.py and set the Variable DEBUG to True. 2. **Production System:** Edit config.py and set the Variable ALLOWED_HOSTS. Execute "python manage.py collectstatic" to create a folder including all static files. Then add PaTT to your server configuration. See also [Django Documnetation](https://docs.djangoproject.com/en/3.1/howto/deployment/) for further information. ---- ## Start the Test or development System ---- ### Go to the folder, where your PaTT-Application is locates (here ~/tmp/patt) cd ~/tmp/patt ###Activate your Virtual Environment source activate ###Start the Server python manage.py runserver ---- ## Backup ---- ### Create Backup files source venv/bin/activate python manage.py dumpdata --natural-foreign --natural-primary -e contenttypes -e sessions -e auth.Permission -e sessions -e patt --indent 2 > dump_base.json python manage.py dumpdata --natural-foreign --natural-primary -e contenttypes -e sessions -e auth.Permission -e sessions patt --indent 2 > dump_patt.json tar -cvzf dump_media.tgz data/media **Further Files need to be backuped! ** ### Restore Backup source venv/bin/activate If you are starting with any database, you need to create one python manage.py migrate Afterward add data step by step to the database. python manage.py loaddata dump_base.json python manage.py loaddata dump_patt.json tar -xvzf dump_media.tgz