README instructions improved
This commit is contained in:
parent
801943401a
commit
94fb13fb65
105
README.md
105
README.md
@ -1,3 +1,104 @@
|
|||||||
# patt
|
# PaTT
|
||||||
|
|
||||||
Project And Teamorganisation Tool
|
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
|
||||||
|
@ -1,15 +1,17 @@
|
|||||||
import os
|
|
||||||
|
|
||||||
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# General settings
|
# General settings
|
||||||
#
|
#
|
||||||
# SECRET_KEY = 'define a secret key'
|
|
||||||
#
|
# SECURITY WARNING: don't run with debug turned on in production!
|
||||||
# ALLOWED_HOSTS = []
|
# DEBUG = False
|
||||||
|
|
||||||
|
# SECURITY WARNING: don't run with a dummy secret in production!
|
||||||
|
# SECRET_KEY = None
|
||||||
|
|
||||||
|
# SECURITY WARNING: don't run with '0.0.0.0' in in production, unless you know what you are doing!
|
||||||
|
# ALLOWED_HOSTS = ['127.0.0.1', ]
|
||||||
|
|
||||||
#
|
#
|
||||||
# Style settings
|
# Style settings
|
||||||
#
|
#
|
||||||
# DEFAULT_THEME = 'clear-red'
|
# DEFAULT_THEME = 'clear-green'
|
||||||
|
@ -31,9 +31,10 @@ if sys.platform == 'linux' or sys.platform == 'linux2':
|
|||||||
# Default values, if not defined in config.py
|
# Default values, if not defined in config.py
|
||||||
#
|
#
|
||||||
USER_CONFIG_DEFAULTS = {
|
USER_CONFIG_DEFAULTS = {
|
||||||
|
'DEBUG': False,
|
||||||
'SECRET_KEY': None,
|
'SECRET_KEY': None,
|
||||||
'DEFAULT_THEME': 'clear-green',
|
'DEFAULT_THEME': 'clear-green',
|
||||||
'ALLOWED_HOSTS': [],
|
'ALLOWED_HOSTS': ['127.0.0.1', ],
|
||||||
}
|
}
|
||||||
|
|
||||||
# Set configuration parameters
|
# Set configuration parameters
|
||||||
@ -54,13 +55,9 @@ for property_name in USER_CONFIG_DEFAULTS:
|
|||||||
if SECRET_KEY is None:
|
if SECRET_KEY is None:
|
||||||
chars = 'abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*(-_=+)'
|
chars = 'abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*(-_=+)'
|
||||||
s_key = ''.join([random.choice(chars) for n in range(50)])
|
s_key = ''.join([random.choice(chars) for n in range(50)])
|
||||||
secret_key_warning = "You need to create a config.py file including a variable config which is a dict with at least a SECRET_KEY definition (e.g.: %s)." % repr(s_key)
|
secret_key_warning = "You need to create a config.py file including at least a SECRET_KEY definition (e.g.: --> %s <--)." % repr(s_key)
|
||||||
raise KeyError(secret_key_warning)
|
raise KeyError(secret_key_warning)
|
||||||
|
|
||||||
# SECURITY WARNING: don't run with debug turned on in production!
|
|
||||||
#
|
|
||||||
DEBUG = False
|
|
||||||
|
|
||||||
|
|
||||||
# Application definition
|
# Application definition
|
||||||
#
|
#
|
||||||
|
Loading…
x
Reference in New Issue
Block a user