Doc-dev/fr
From Milimail
Contents |
Convention de Gestion des Numéros de Version
Ce chapitre décrit les bonnes pratiques pour gérer les versions du client de messagerie universel Milimail et les extensions développées pour ce client.
La version d'un logiciel correspond à un état donné de son évolution. Elle est souvent associée à une numérotation qui permet de l'identifier, voire dans certains cas à un nom symbolique. Les noms symboliques ne sont pas utilisés sur ce projet.
Cycle de vie d'un produit informatique
|
| |
|
Phase alpha :
| |
|
Phase beta :
| |
|
Release candidate :
| |
|
Version ou version GA (pour General Availability) :
|
Mode de numérotation retenue
Le numéro de version se présentera de la manière suivante :
Note: le numéro associé à la révision, peut-être aussi appelé maintenance.
Voici comment incrémenter les différentes valeurs du numéro de version.
|
Valeurs |
Raison d’incrémentation |
Quand |
|
major |
|
Dès que les développements commencent. |
|
minor |
|
Dès que les développements commencent. |
|
revision |
|
Dépend de la livraison de la version finale :
|
|
build |
|
Chaque fois que la distribution est publiée. Que ce soit pour le service intégration, qualité ou le client final. |
(*) Cycle de vie : alpha, beta ou rc (release candidate).
Gestion des tags et des branches
Tag THUNDERBIRD_2_0_0_0_RELEASE
|
|
mozilla.org---\-------------------------------\----MILIMAIL_THUNDERBIRD_2_0_0_0_BRANCH------>
\ \
\ \
\----MILIMAIL_V0_BRANCH---> \
\
\
\
Tag THUNDERBIRD_2_0_0_17_RELEASE \
| \
| \
mozilla.org----------------\-------------trunk/trustedbird-------------->
SVN structure
+ milimail // Root
|
+ branches // Branches
| + milimail
| + MILIMAIL_THUNDERBIRD_2_0_0_0_BRANCH // Old Milimail/Trustedbird branch based on Thunderbird 2.0.0.0
| + MILIMAIL_THUNDERBIRD_2_0_0_14_BRANCH // Old Milimail/Trustedbird branch based on Thunderbird 2.0.0.14
| + MILIMAIL_V0_BRANCH // Milimail/Trustedbird V0 branch based on Thunderbird 2.0.0.0
|
+ Docs // Documentation
|
+ tags // Tags: old released versions
| + card_viewer_extended
| + crl_over_ldap
| + dsn
| + LanguagePackages
| + mdn_extended
| + milimail // Milimail releases
| + mozilla
| + THUNDERBIRD_2_0_0_0_RELEASE // Thunderbird 2.0.0.0 from mozilla.org
| + THUNDERBIRD_2_0_0_14_RELEASE // Thunderbird 2.0.0.14 from mozilla.org
| + multi-ldap
| + priority
| + send_format_ldap
| + signed_receipt
| + triple_wrapping
| + xsmtp
|
+ trunk // Trunk: current development of Trustedbird, add-ons and packager
+ all-milimail-xpi
+ card-viewer-extended
+ check-recipients
+ crl-over-ldap
+ l10n
+ fr // French translations of Milimail branch
+ mdn-extended
+ messages-remote-services
+ trustedbird // Current Trustedbird branch based on Thunderbird 2.0.0.17
+ multi-ldap
+ notifications-viewer
+ out-of-office
+ packager // Ant script to fetch, build and package Trustedbird and add-ons
+ send-format-ldap
+ xsmtp
Build Documentation
Dependencies
Linux (Debian)
- build-essential
- ant
- subversion
- libgtk2.0-dev
- libglib1.2-dev
- libidl-dev
- libxt-dev
- zip
- unzip
- flex
- bison
- fakeroot
- dpkg-deb
- a Java JDK for ant (java-gcj-compat-dev, sun-java6-jdk, openjdk-6-jdk,...)
Windows
See http://developer.mozilla.org/en/docs/Windows_Build_Prerequisites
Get build scripts/packager
Read only / through SVN protocol (TCP port 3690)
$ svn co svn://svn.adullact.net/svnroot/milimail/trunk/packager trustedbird
Read-write / through SSH (TCP port 22)
$ svn co svn+ssh://my_username@svn.adullact.net/svnroot/milimail/trunk/packager trustedbird (replace my_username by your Adullact SSH username)
// Copy the file server.properties.template to server.properties $ cp trustedbird/server.properties.template trustedbird/server.properties
// Set your SSH username in server.properties $ sed -i s/SSH_USERNAME/my_username/ trustedbird/server.properties (replace my_username by your Adullact SSH username)
Building
$ cd trustedbird
// Build and package trustedbird and add-ons $ ant build-all
// OR: build and package trustedbird $ ant extract-tb update-tb build-tb package-tb // OR: build and package add-ons $ ant package-addons
SSL certificates generation
In order to test signing and encryption, you need to have certificates.
Certificates can be generated with a Perl script CA.pl supplied with openssl.
- 1) Create a certificate hierarchy in new directory demoCA/
/usr/lib/ssl/misc/CA.pl -newca
(type enter when prompted to create a new certificate)
=> demoCA/cacert.pem: root certificate (CA)
Import cacert.pem in "Authorities" tab in Thunderbird certificate manager and choose to trust this CA to identify email users.
- 2) Create a new certificate request for a user
/usr/lib/ssl/misc/CA.pl -newreq
=> newkey.pem: user's private key
=> newreq.pem: certificate request for the user
- 3) Sign the certificate request with certificate authority key
/usr/lib/ssl/misc/CA.pl -signreq
=> newcert.pem: user's signed certificate
- 4) Convert certificate to DER format (for LDAP)
openssl x509 -outform DER -in newcert.pem -out newcert.der
=> newcert.der: user's signed certificate in DER format
- 5) Create PKCS#12
/usr/lib/ssl/misc/CA.pl -pkcs12 "Name of the certificate"
=> newcert.p12: root certificate, user's signed certificate and user's private key
Import newcert.p12 in "Your certificates" tab in Thunderbird certificate manager.
(do again step #2 to #5 to create a new certificate for another user issued by the same authority)
Autre documentation technique
Spécifications fonctionnelles et techniques détaillées
Reference: English – Translations: Français •



