Trac - Notification email au format HTML
Qu'est-ce que Trac ?
- Wiki,
- Gestion de feuilles de route,
- Historique,
- Rapport de bugs,
- Explorateur Subversion.
La notification par email
Trac offre la possibilité de recevoir une notification par email lorsqu'un ticket est créé ou modifié. Cependant les mails envoyés par Trac sont en texte brut. La plupart des clients mails et webmails offrent aujourd'hui la possibilité de recevoir des mails au format HTML.
Je vous propose donc un petit tutoriel vous expliquant les modifications à opérer afin de recevoir les notifications en HTML et de tirer partie des possibilités de mise en page qu'offre ce format. Ce tutoriel donne la procédure à suivre pour Trac 0.11, si vous disposez de Trac en version 0.10, je vous invite à suivre le tutoriel suivant (en anglais) : Getting Trac to send out HTML emails dont je me suis inspiré.
Passons aux choses sérieuses
Avant toute chose, pensez à sauvegarder vos fichiers avant de les modifier. En cas de problème il vous sera ainsi plus facile de revenir en arrière.
- Ouvrez un terminal et entrez dans le répertoire où est installé Trac.
-
Faites une sauvegarde du fichier
ticket/notification.pydans le dossier de Trac. Attention à ne pas confondre avectrac/notification.pyà la racine de Trac. -
Téléchargez le patch
notification.patchdepuis votre navigateur ou via la commandewget http://trac-html-notification.alwaysdata.net/patches/notification.patch
dans votre terminal. -
Appliquez le patch
notification.patchen exécutant la commande suivante :patch -p0 ticket/notification.py notification.patch
-
Faites une sauvegarde du fichier
ticket_notify_email.txtqui se trouve dans le répertoire de votre projet Trac (/usr/lib/python2.5/site-packages/Trac-0.11.1-py2.5.egg/trac/ticket/templates/) au cas où vous souhaiteriez revenir à la version originale. -
Ajoutez les balises HTML nécessaires dans le fichier
ticket_notify_email.txt. Il s'agit d'un gabarit (ou template) pour l'envoi d'emails. Techniquement, il s'agit de gabarits Genshi mais vous devriez réussir assez facilement à l'adapter à vos besoin. Si vous êtes capable d'installer Trac, vous devriez aiséement comprendre la syntaxe de Genshi ;)
Vous pouvez appliquer le patchticket_notify_email.patchou télécharger mon gabarit. - Adapter le gabarit à vos besoins ou suivant vos goûts si vous le souhaitez.
-
Envoyez un email de test via Trac (en mettant à jour un ticket par exemple) et assurez-vous qu'il est
bien envoyé au format HTML. Afin d'avoir un code propre et facilement maintenable, il est
préférable de mettre un minimum de code HTML dans le fichier
.pyet d'utiliser le fichier.txtpour faire la mise en page. - Répétez les deux dernières étapes jusqu'à obtenir le rendu souhaité.
- Pensez à relancer votre serveur web si vous ne voyez aucun changement. En effet, il se peut qu'il garde certaines informations en cache.
#78: description of bug number 78
----------------------------+-----------------------------------------------
Reporter: someone | Owner: me
Type: defect | Status: closed
Priority: critical | Milestone:
Component: MyComponent | Resolution: fixed
Keywords: key1 key2 key3 |
----------------------------+-----------------------------------------------
Changes (by me):
* status: assigned => closed
* resolution: => fixed
--
Ticket URL: http://trac.myproject.com/ticket/78#comment:2
MyProject http://trac.myproject.com
MyProject
| Reporter: | someone | Owner: | me |
|---|---|---|---|
| Type: | defect | Status: | closed |
| Priority: | critical | Milestone: | |
| Component: | myComponent | Resolution: | fixed |
| Keywords: | key1 key2 key3 | ||














