Migration esup-portail de 2-4-esup vers 2-5-esup

Ce document décrit une procédure de migration d'esup-portail, depuis un package uPortal-2.4-esup vers uPortal-2.5-esup.


Vincent  MATHIEU 
Université Nancy 2

Dates de modification
Revision 1.0 18 décembre 2005
Revision 1.01 12 janvier 2006 ajout des informations concernant le canal CRuntimeInfo
1. Généralité
2. Compatibilité des canaux
3. Précautions
4. Migration de la base
5. Procédure de migration
5.1. Désarchivage, et premier paramétrage
5.2. Personnalisations
5.2.1. Custom/uPortal/properties
5.2.2. Custom/uPortal/lib
5.3. Compilation et déploiement du portail
5.4. Compilation et déploiement des canaux
5.5. Cas du canal CRuntimeInfo
5.5.1. Continuer à utiliser le canal CRuntimeInfo
5.5.2. Ne plus utiliser le canal CRuntimeInfo
5.6. Tests
5.7. Facultatif

1. Généralité

Pour une bonne compréhension de ce document, la lecture du document présentant le package uPortal-2.5-esup et du document sur les conseils d'installation sont nécessaires.

La migration esup-portail de uPortal-2.4-esup vers uPortal-2.5-esup est plus complexe que les évolutions de versions mineures du package.

Les principaux changements techniques sont les suivants :

JDK 1.5

Un JDK 1.5 est nécessaire. La version précédente du package fonctionnait avec un JDK 1.4.

Tomcat >= 5.5

Cette version du package nécessite une version de tomcat supérieure ou égale à 5.5 ; le 'moteur' tomcat doit donc être changé. Une version 5.5.9 est proposée dans le package.

ant >= 1.6.5

Une version de ant égale ou supérieure à 1.6.5 est nécessaire au bon fonctionnement du package.

Base uportal

Certains changements impactent la base uPortal. Un document dédié aux changements et à la migration de la base est proposé.

On va supposer dans ce document que le JDK et ant sont déja installés, que l'installation est conforme au document 'conseils d'installation', et que le package actuellement en cours est uPortal-2.4-esup-1.1, et que le nouveau package est uPortal-2.5-esup-1.

2. Compatibilité des canaux

Il faut en préalable s'assurer que les canaux actuellement utilisés soient compatibles avec la nouvelle version d'esup-portail, et en particulier avec la JDK 1.5 ; Si ce n'est pas le cas, il est conseilé de migrer ces canaux vers une version compatible 2.4 et 2.5 afin de faciliter la migration du portail.

Plusieurs canaux esup ne l'étaient pas, souvent à cause de l'utilisation dans le source de noms qui sont devenus des mot clés du langage java ; c'est le cas en particulier du mot clé 'enum'.

Voici la liste des canaux esup qui sont concernés, et la version minimum pour la compatibilité :

mailTo

Version minimum : 2.1

stockage

Version minimum : 4.1-RC-3

helpdesk

Version minimum : 1.7.19 . Voir le document de compatibilités.

3. Précautions

Avant toute intervention, il est nécessaire de prévoir un retour en arrière en cas d'incident ; ca sous-entend donc une sauvegarde de la base esup-portail et de tout l'environnement source et de production esup-portail.

Pour ce qui concerne la base, il est préconisé de dupliquer la base existante dans une nouvelle base, d'appliquer les changements dans le nouvelle base, et bien sûr de paramétrer cette nouvelle base dans la configuration uPortal-2.5-esup.

Il est également préconisé de tester l'ensemble de la procédure sur une machine de pré intégration, avec un copie de la base réelle, et les canaux réellement utilisés.

4. Migration de la base

Appliquer la procédure décrite dans le document de migration de la base de 2.4 vers 2.5.

Important

Pour les établissements qui ne désireraient pas migrer la base, mais qui aurait des canaux ou applications externes qui utiliserainet les groupes uportal :

Les groupes PAGS conservent leur identifiant ; par contre, les groupes internes uPortal ne conservent pas nécessairement leur identifiant.

Il faut donc être très prudent lors de cette migration.

5. Procédure de migration

Dans un premier temps, on va procéder comme une migration mineure, voir le document conseils d'installation ; à adapter en fonction de votre environnement.

Cette procédure n'entre pas dans tous les détails exposés dans les documents référencés. Par exemple, la sécurité autour de tomcat, ...

5.1. Désarchivage, et premier paramétrage

5.2. Personnalisations

Recopier l'ensemble du répertoire BUILD/Perso vers BUILD/Custom. Ce répertoire contient différents fichiers de personnalisation de l'établissement. Il faudra s'assure que ces fichiers restent compatibles avec la nouvelle version d'esup-portail.

bien lire le CHANGELOG du package pour les principales modifications.

Ce qu'il vous faudra probablement modifier (ce n'est certainement pas exhaustif) :

5.2.1. Custom/uPortal/properties

personDirectory.xml

Ce fichier remplace l'ancien fichier PersonDirs.xml. Il sert à 'mapper' des attributs LDAP ou issus d'un SGBD vers des attributs uPortal. Sa syntaxe est différente.

Vous pouvez donc supprimer l'ancier fichier PersonDirs.xml.

uPortal55.xml

Ce fichier remplace l'ancien fichier uPortal.xml. il sert à définir les pools d'accès bases de données du serveur Tomcat. Sa syntaxe est différente.

5.2.2. Custom/uPortal/lib

Ce sont les librairies liées à des canaux que vous avez installé.

Le JDK1.5 contient maintenant en natif les librairies jaxp. Certains canaux nécessitaient les librairies jaxp, ce qui fait qu'il est possible que vous les ayez ajoutées à ce répertoire.

Si c'est le cas, il faut les supprimer.

Voici les librairies concernées : dom.jar, jaxp-api.jar, sax.jar, xalan.jar, xercesImpl.jar

5.3. Compilation et déploiement du portail

S'assurer que l'installation s'est bien déroulée dans les bons répertoires.

5.4. Compilation et déploiement des canaux

Il va falloir maintenant compiler et déployer les canaux. Le déploiement des canaux ici est pris au sens file-système, il n'est pas nécessaire de les déployer dans la base esup-portail, ceci est récupéré de la version précédente.

Voir conseils d'installation, paragraphe "Installation des canaux".

5.5. Cas du canal CRuntimeInfo

C'est un canal développé par l'Université Cornell, et mis dans le 'pot commun' ClearingHouse du jasig.

Il permet d'afficher des informations de fonctionnement du portail courant.

Il avait été intégré aux précédentes distributions esup-portail. Il ne l'est plus depuis la version uPortal-2.5-esup :

le canal esup-canal-infos disponible dans l'espace de téléchargement esup-portail permet de monitorer la ou les instances de portail en cours de fonctionnement ; il est donc conseillé de l'utiliser.

Pour les établissements qui migrent de la version 2.4 vers la version 2.5 en conservant la base de données, 2 options sont possibles :

5.5.1. Continuer à utiliser le canal CRuntimeInfo

Dans ce cas, il faut récupérer le fichier CRuntimeInfo.car de la distribution précédente, et le déposer dans Custom/uPortal/webpages/cars/.

Penser à faire un ant esup.init et ant uportal.deploy pour le déployer dans l'environnement de production.

5.5.2. Ne plus utiliser le canal CRuntimeInfo

Le canal a déja été publié, et est est connu de la base uPortal. Il faut le retirer des fragments poussés, et republier ces fragments.

5.6. Tests

Démarrage du portail. Faire un test des différents canaux, s'assurer que tout fonctionne correctement.

5.7. Facultatif

Repasser la propriété server.deploy à la valeur false dans le fichier esup-2.5.properties.