aboutsummaryrefslogtreecommitdiff
path: root/docs/HACKING
diff options
context:
space:
mode:
authorStephen Finucane <stephen.finucane@intel.com>2015-08-21 15:32:07 +0100
committerDamien Lespiau <damien.lespiau@intel.com>2015-09-17 17:40:09 +0100
commit808904d8a80c2b41234f2de9827ebcf67edcf227 (patch)
tree305840c6400c02d14e4e1cc3fdd3e7f37678aa76 /docs/HACKING
parentc1c3f73c0a98996e1347353864e9367ac69edf33 (diff)
downloadpatchwork-808904d8a80c2b41234f2de9827ebcf67edcf227.tar
patchwork-808904d8a80c2b41234f2de9827ebcf67edcf227.tar.gz
docs: Rewrite documentation
The INSTALL and HACKING documents are an important guide for new patchwork users and developers and should be as informative as possible. A number of changes were needed to these documents owing to the out-of-date or incomplete information they contained. These changes include: * Removing references to the dead mod_python/flup projects * Adding references to Gunicorn+nginx, which a credible modern alternative to Apache+mod_wsgi * Providing explanatory links to concepts/tools like ident-based authentication and tox * Referencing the newer tools available to developers, like tox and the 'requirements.txt' files * Integration with mkdocs, with eye on eventual publishing of documentation to ReadTheDocs or equivalent. These changes result in a significant rewrite which should hopefully lower the barrier to entry for people wishing to use or develop patchwork. Acked-by: Damien Lespiau <damien.lespiau@intel.com> Signed-off-by: Stephen Finucane <stephen.finucane@intel.com> Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Diffstat (limited to 'docs/HACKING')
-rw-r--r--docs/HACKING69
1 files changed, 0 insertions, 69 deletions
diff --git a/docs/HACKING b/docs/HACKING
deleted file mode 100644
index c1b478e..0000000
--- a/docs/HACKING
+++ /dev/null
@@ -1,69 +0,0 @@
-== Using virtualenv
-
-It's always a good idea to use virtualenv to develop python software.
-
-1. Install pip, virtualenv (python-pip, python-virtualenv packages)
-
- Because we're going to recompile our dependencies, we'll also need
- development headers:
-
- - For the MySQL/MariaDB setups: mariadb-devel (Fedora), libmysqlclient-dev
- (Debian)
-
-2. Create a new virtual environement. Virtual environments are "instances" of
- your system python, without any of the extra python packages installed.
- Inside a virtual env, we'll just install the dependencies needed for
- patchwork and run it from there.
-
- Virtual envs are useful to develop and deploy patchwork against a "well
- known" set of dependencies. They can also be used to test patchwork against
- several versions of django, creating a separate virtual env per version.
-
- $ virtualenv django-1.7
-
- will create a virtual env called 'django-1.7' in eponymous directory.
-
-3. Activate a virtual environment
-
- $ sources django-1.7/bin/activate
- (django-1.7)$
-
- The shell prompt is preprended with the virtual env name.
-
-4. Install the required dependencies
-
- To ease this task, it's customary to maintain a list of dependencies in a
- text file and install them in one go. One can maintain such a list of
- dependencies per interesting configuration.
-
- (django-1.7)$ pip install -r docs/requirements-django-1.7-mysql.txt
-
- Of course, this is a one-time step, once installed in the virtual
- environment, no need to to install the requirements everytime.
-
-5. Now one can run patchwork within that environment
-
- (django-1.7)$ ./manage.py --version
- 1.7
- (django-1.7)$ ./manage.py runserver
-
-6. To exit the virtual environment
-
- (django-1.7)$ deactivate
- $
-
-
-== Running tests
-
-- To run all tests:
-
- $ ./manage.py test
-
-- To run all test methods (methods which name starts with 'test') of a TestCase
- subclass:
-
- $ ./manage.py test patchwork.tests.SubjectCleanUpTest
-
-- To run a single test:
-
- $ ./manage.py test patchwork.tests.SubjectCleanUpTest.testSubjectCleanup