Le but de ce document est de définir une norme pour le déploiement de canaux via ANT. |
Cédric Champmartin Sébastien Gaudin
Université de Nancy 2
|
Dates de modification |
|
Revision 1.0 |
2 février 2006 |
Reprise de tout le document original en docbook (Yohan Colmant) |
Nous proposons ici d'uniformiser le déploiement de nos canaux, dans le cadre de développements classiques. Par le terme classique, nous entendons 'canal' et pas 'librairies'. Pour cela, vous trouverez ici les fichiers types à utiliser dans le développement de vos canaux : build.properties, build.xml
Installation d'un environnement esup-portail de test |
ant_deploylibs. |
ant deploy |
|
Ce fichier se compose de 2 parties :
Normalement, sous windows, les trois chemins (Tomcat, uPortal et deploy) sont décrits dans la distribution esup standard , mais libre à chacun de s'organiser comme il veut, donc vous pouvez adapter ici l'installation à votre arborescence locale.
tomcat.home = C:/esupdev/esupdev-2.4/uPortal_2-4-1-quick-start/Tomcat_5-0-28 uportal.home = C:/esupdev/esupdev-2.4/uPortal_2-4-1-quick-start/uPortal_rel-2-4-1 deploy.home = C:/esupdev/esupdev-2.4/uPortal_2-4-1-quick-start/webapps/uPortal |
Deux chemins d'installation doivent être précisés : Là où seront déployées les sources (depuis $
{deploy.home}/WEB-INF/classes/) deploy.tree = org/esupportail/portal/channels #deploy.tree = fr/univ/portal/channelset |
là ou seront déployés les fichiers de propriétés (depuis ${deploy.home}
/WEB-INF/classes/properties)
properties.tree = org_esup #properties.tree = fr_univ |
Le nom du canal va servir à nommer les répertoires spécifiques pour le déployement du canal (pour les feuilles de style, pour les properties ... etc).
app.name.home=CExemple |
Ce nom est utilisé dans le chemin d'accès au fichier de configuration. Donc si vous le modifiez, pensez à répercuter cette modification dans la classe java faisant appel au fichier de configuration. |
La variable app.version est utilisée à titre indicatif pour le javadoc et pour dans le nom des fichiers .tar.gz et .zip générés.
app.version=1.0.1-RC-1 |
Le nom du package va servir à nommer les fichiers .tar.gz et .zip générés.
app.name.deploy=esup-canal-exemple |
Dans chacun de ces 2 deux cas, les fichiers sont copiés dans un sous répertoire dont le nom est $app.name.home |
Les fichiers sont déployés dans les répertoires suivants :
Les répertoires en italique dans les éxemples ci-dessus sont les répertoires par défaut. Si vous n'utilisez pas ces répertoires, vous pouvez les modifier dans le build.xml (les noms sont en début de fichiers). |
Les "sous-targets" n'ont pas de description. Ceci implique qu'il est possible, sous eclipse, de les masquer.
Voici le détail des targets que vous serez amené à utiliser :
allAppel des 3 targets :clean,undeploy(permet d'effacer de "vieux" fichiers dans l'arborescence),deploy. Très utile lors dudéveloppement d'un canal.
prepareCrée tous les répertoires par défaut dans le canal (docs,tests,source...), peut être utilisé pour obtenir unenvironnement type de développement.
cleanVide les répertoiresbuild,junitBuildetdist.
undeploySupprime tous les éléments (classes,media,properties,stylesheets) mis en place par la targerant_deploymaispas les librairies, ni le fichier correspondant au pubchan
deployCompile et déploie le canal (classes,media,properties,stylesheets) maispas les librairies, ni le fichier correspondant au pubchan
compilCompile le canal dans lebuild
javadocCrée la javadoc
distCrée le.jar du canal pour la distribution
buildtarCrée le package en.tar.gz
buildzipCrée le package en.zip(zip même si les noms complets des fichiers dépassent 100 caractères)
junit.initvide les répertoires nécessaires aux tests junits
junit.compilecompile les classes junit (par défault dans le répertoirebuildJunit)
junit.startlance le(s) test(s) junits.
|
deploylibsPermet de déployer les librairies du canal.MAIS si une librairie déjà déployée a le même nom que l'une dans le canal, cette dernière ne sera pas déployée! Pour cela utilisez la commandeant_deploylibs. Sous eclipse, cette target ne fonctionne pas, car le logiciel ne prend pas en compte l'intervention utilisateur dans la console.
undeploylibsPermet d'enlever les librairies propres au canal.MAIS si une librairie est utilisée pour un autre canal, elle sera tout de même supprimée.Sous eclipse, cette target ne fonctionne pas, car le logiciel ne prend pas en compte l'intervention utilisateur dans la console.
deploypubchanPermet de déposer les fichiers pubchan dans le répertoire d'uPortal. Executez ensuite la commandeant_uportal.pubchandubuild.xmlfournit dans le package esupdev.
undeploypubchanPermet d'enlever les fichiers pubchan relatifs au canal du répertoire d'uPortal.
docbook.to.htmlTransforme le docbook en HTML.
Voir cette documentation plus détaillée. |
docbook.to.html.noindexTransforme le docbook en HTML sans générer de table des matières.
Voir cette documentation plus détaillée. |