Buildout

Buildout est actuellement le système de déploiement d'applications Python pour les _systèmes d'information_ à Montréal.

/!\ Ce n'est cependant pas la méthode recommandée pour les applications d'administration système ou de gestion d'infrastructure, qui doivent se limiter à utiliser les paquets disponibles avec la version Debian installée (ou ses backports).

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

Création d'un projet avec Buildout

Nous disposons d'un squelette Buildout Django à l'AUF qui recense nos bonnes pratiques.

wget 'http://git.auf.org/?p=olivier.git;a=blob_plain;f=bootstraper/mk_django_project.py;hb=HEAD' -O mk_django_project.py

{i} Lors d'un développement local, il est utile de faire les installations dans un environnement virtuel avec virutalenv. Ceci reste néanmoins optionnel (car le script se charge de récupérer la dernière version), mais fortement conseillé.

python mk_django_project.py

{i} À la fin de la procédure, un petit récapitulatif des choses à faire est affiché.

Utilisation

Environnement de développement

$ python bootstrap.py 
$ bin/buildout -c devel.cfg
$ bin/django runserver

Environnement de production

$ python bootstrap.py 
$ bin/buildout

{i} Buildout a généré un django.wsgi dans bin, il suffira de configurer Apache pour l'utiliser

Python/buildout (dernière édition le 2012-08-14 22:57:13 par JeanChristopheAndré)