Documentation non-complete

Traduction de http://www.justanothercodemonkey.com/2009/08/deploying-django-with-buildout.html

Buildout

Pour toute nouvelle application, ou pour tout nouveau déploiement, la facon de procéder est d'utiliser buildout.

Buildout permet de gérer les dépendances, crée un environnement virtuel similaire a virtualenv, etc.

Création du buildout

La procédure utilise paster et les templates django, il faut donc l'installer:

easy_install fez.djangoskel 

Création de la structure de base:

paster create -t django_buildout <nom du dossier>

Paster va poser quelques questions:

Selected and implied templates:
fez.djangoskel#django_buildout  A plain Django buildout

Variables:
egg:      djangodev
package:  djangodev
project:  djangodev
Enter django_version (Django version to fetch, the default is 1.0.2) ['1.0.2']:
Enter django_project_name (Name of the main Django project folder) ['project']

Une fois terminé, on aura l'arborescence suivante:

djangodev
|-- bootstrap.py
|-- buildout.cfg
|-- devel.cfg
`-- README.txt

Lors de la premiere utilisation, il faut lancer le boostrap:

$ python ./bootstrap.py
Creating directory '/home/bashu/Temp/djangodev/bin'.
Creating directory '/home/bashu/Temp/djangodev/parts'.
Creating directory '/home/bashu/Temp/djangodev/develop-eggs'.
Generated script '/home/bashu/Temp/djangodev/bin/buildout'.

Il faut maintenant lui faire installer les dependances, et créer le projet:

$ ./bin/buildout -c devel.cfg
Installing django.
...

Il existe maintenant un nouvel executable bin/django:

$ ./bin/django syncdb