Ce document décrit une procédure de migration d'esup-portail, depuis un package uPortal-2.4-esup vers uPortal-2.5-esup. |
Dates de modification | ||
---|---|---|
|
|
|
|
|
|
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 :
Un JDK 1.5 est nécessaire. La version précédente du package fonctionnait avec un JDK 1.4.
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.
Une version de ant égale ou supérieure à 1.6.5 est nécessaire au bon fonctionnement du package.
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.
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é :
Version minimum : 2.1
Version minimum : 4.1-RC-3
Version minimum : 1.7.19 . Voir le document de compatibilités.
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.
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.
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, ...
Désarchivage dans /home/esup/BUILD.
Création des répertoires d'accueil et des liens symboliques
Paramétrage du fichier esup-2.5.properties ; il devrait être identique à l'ancien fichier esup-2.4.properties.
Adapter éventuellement les paramètres d'accès à la base esup-portail.
Mettre d'une manière provisoire la propriété server.deploy à la valeur true, pour que le serveur tomcat se déploie.
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) :
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.
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.
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
ant -buildfile /home/esup/BUILD/uPortal-package/build.xml esup.unzip
ant -buildfile /home/esup/BUILD/uPortal-package/build.xml esup.init
ant -buildfile /home/esup/BUILD/uPortal-package/build.xml uportal.deploy
ant -buildfile /home/esup/BUILD/uPortal-package/build.xml uportal.dbtest
S'assurer que l'installation s'est bien déroulée dans les bons répertoires.
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".
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 :
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.
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.
Démarrage du portail. Faire un test des différents canaux, s'assurer que tout fonctionne correctement.
Repasser la propriété server.deploy à la valeur false dans le fichier esup-2.5.properties.