1.2 sitestatic ignore
[auf_skeleton_django.git] / auf / skeleton / django / templates.py
1 # -*- encoding: utf-8 -*-
2
3 import os
4 from paste.script import templates
5 from paste.script.templates import var
6
7 RENOMMAGES = {'gitignore' : '.gitignore'}
8
9 class DjangoTemplate(templates.Template):
10 """
11 Modèle de projet Django pour l'AUF reposant sur `Buildout <http://www.buildout.org/>`_.
12
13 Il permet de construire un projet avec les briques de base importantes pour la maintenance
14 et l'homogénéité entre les applications, avec notamment:
15
16
17 * Un framework de migration (South)
18
19 * La charte graphique de l'AUF
20
21 * La Recette AUF pour préparer le projet Django
22
23
24 **Utilisation**::
25
26 paster create -t auf_django
27
28
29 **Les fichiers squelettes**:
30
31 *buildout.cfg*
32
33 .. literalinclude:: ../auf/skeleton/django/templates/django/buildout.cfg_tmpl
34
35 *devel.cfg*
36
37 .. literalinclude:: ../auf/skeleton/django/templates/django/devel.cfg_tmpl
38
39 """
40 egg_plugins = ['auf.skeleton.django']
41 summary = 'Démarrer un nouveau projet Django avec Buildout'
42 _template_dir = 'templates/django'
43 use_cheetah = True
44
45 vars = [
46 ]
47
48 def post(self, command, output_dir, vars):
49 for avant, apres in RENOMMAGES.items():
50 avant = os.path.join(output_dir, avant)
51 apres = os.path.join(output_dir, apres)
52 os.rename(avant, apres)
53 print "----------------------------------------------------------------"
54 print "Génération du projet terminée."
55 print ""
56 print "################### AVERTISSEMENTS #############################"
57 print "* Paquets requis : "
58 print " - python-virtualenv (environement Python de DEV)"
59 print " - python-mysqldb (connecteur Python SQL)"
60 print " - git-core (Gestionnaire de sources)"
61 print ""
62 print "* Assurez-vous d'avoir chargé votre environement virtuel (DEV)"
63 print "################################################################"
64 print ""
65 print "* : cd %s (aller dans le nouveau projet)" % output_dir
66 print "* : python bootstrap.py (pour récupérer buildout et setuptools)"
67 print "* : bin/buildout -c devel.cfg (pour boostraper le projet Django)"
68 print "* : Configurer les accès MySQL dans conf.py"
69 print "* : bin/django syncdb (créer les tables)"
70 print "* : bin/django migrate (initialiser les incréments de migration)"
71 print "* : 'Pusher' le projet dans le reposoire git centralisé"
72 print ""
73 print "----------------------------------------------------------------"