Patchwork uses the django framework - there is some background on deploying
django applications here:
- http://www.djangobook.com/en/1.0/chapter20/
+ http://www.djangobook.com/en/2.0/chapter12/
You'll need the following (applications used for patchwork development are
in brackets):
* A python interpreter
- * django
+ * django >= 1.2
* A webserver (apache)
* mod_python or flup
- * A database server (postgresql)
+ * A database server (postgresql, mysql)
+ * relevant python modules for the database server (e.g: python-mysqldb)
1. Database setup
> CREATE USER 'www-data'@'localhost' IDENTIFIED BY '<password>';
> CREATE USER 'nobody'@'localhost' IDENTIFIED BY '<password>';
+ Once that is done, you need to tell Django about the new Database
+ settings, using local_settings.py (see below) to override the defaults
+ in settings.py:
+
+ DATABASE_ENGINE = 'mysql'
+ DATABASE_NAME = 'patchwork'
+ DATABASE_USER = 'root'
+ DATABASE_PASSWORD = 'my_secret_root_password'
+ DATABSE_HOST = 'localhost'
+ DATABASE_PORT = ''
+
2. Django setup
Set up some initial directories in the patchwork base directory:
lib/packages is for stuff we'll download, lib/python is to add
to our python path. We'll symlink python modules into lib/python.
- At the time of release, patchwork depends on django version 1.0 or
+ At the time of release, patchwork depends on django version 1.2 or
later. Your distro probably provides this. If not, do a:
cd lib/packages
cd ../python
ln -s ../packages/django/django ./django
- We also use the django-registration infrastructure from
- http://bitbucket.org/ubernostrum/django-registration/. Your distro
- may provide the django-registration python module (in Ubuntu/Debian it's
- called 'python-django-registration'). If not, download the module
- and symlink it to lib/python/ :
-
- cd lib/packages/
- hg clone http://bitbucket.org/ubernostrum/django-registration/
- cd ../python
- ln -s ../lib/packages/django-registration/registration ./registration
-
- We also use some Javascript libraries:
-
- cd lib/packages
- mkdir jquery
- cd jquery
- wget http://jqueryjs.googlecode.com/files/jquery-1.3.min.js
- wget http://www.isocra.com/articles/jquery.tablednd_0_5.js.zip
- unzip jquery.tablednd_0_5.js.zip jquery.tablednd_0_5.js
- cd ../../../htdocs/js/
- ln -s ../../lib/packages/jquery/jquery-1.3.min.js ./
- ln -s ../../lib/packages/jquery/jquery.tablednd_0_5.js ./
-
The settings.py file contains default settings for patchwork, you'll
need to configure settings for your own setup.
ADMINS
TIME_ZONE
LANGUAGE_CODE
+ DEFAULT_FROM_EMAIL
+ NOTIFICATION_FROM_EMAIL
You can generate the SECRET_KEY with the following python code: