Project And Teamorganisation Tool
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Dirk Alders 4a7549ec26 users library update 1 month ago
.vscode New theme with color Clear Digits added 1 year ago
config_example users library update 1 month ago
data/media/theme Initial django-patt implementation 4 years ago
fstools @ 9237f6f7f7 Adaptions to changed simplified user profile additions in users module 1 month ago
main password recovery integrated 1 month ago
mycreole @ 997594e371 django_lib update 2 months ago
patt @ 7ff8071be9 Adaptions to changed simplified user profile additions in users module 1 month ago
requirements Adaptions to changed simplified user profile additions in users module 1 month ago
stringtools @ e1f76d9631 mycreole update 3 years ago
themes @ b7673fa827 password recovery integrated 1 month ago
users @ a50e55daf1 users library update 1 month ago
.gitignore Adaption to new logging 3 years ago
.gitmodules mycreole update 3 years ago
.project eclipse project files added 4 years ago
.pydevproject eclipse project files added 4 years ago
LICENSE Initial commit 4 years ago
README.md Adaption to new logging 3 years ago
activate Initial django-patt implementation 4 years ago
manage.py Initial django-patt implementation 4 years ago
reposinit reposinit script added 2 years ago
requirements.txt Auto-Field adaption for Django >= 3.2 2 years ago

README.md

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 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

Restore Backup

source venv/bin/activate

If you are starting without a 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