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.
Il ne me semble pas avoir vu de concertation sur cette décision... A-t'elle été validée et si oui par qui ? -- ProgFou
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