Pages enfant
  • 06 - Conseils d'utilisation




Les librairies

uPortal est packagé avec un certain nombre de librairies (fichiers .jar) nécessaires à son bon fonctionnement ; esup-portail ajoute un certain nombre de librairies communes à notre environnement.

Certains canaux ont également besoin de librairies externes pour fonctionner ; les canaux 'natifs' uportal (hors les portlets) s'exécutent dans le contexte d'uPortal ; ils partagent donc les mêmes librairies.

Faite attention a ne pas avoir 2 fois la même librairie avec des noms différent (xalan-2.7.0.jar et xalan-2.7.2.jar par exemple)

 Les librairies portail sont maintenant découpées en dossier :

  • clover : inutilisé pour l'instant
  • compile : utilisé pour la compilation du portail  et copié dans le webapps lors du deploiement)
  • container-common : utilisé pour la compilation du portail et copié dans Tomcat/common/lib si (tomcat.update.lib=true)
  • container-common-endorsed : utilisé pour la compilation du portail et copié dans Tomcat/common/endorsed si (tomcat.update.lib=true)
  • container-shared : utilisé pour la compilation du portail et copié dans Tomcat/shared/lib si (tomcat.update.lib=true)
  • portlets : les portlets exemple du portail
  • provided : utilisé pour la compilation du portail uniquement
  • runtime : utilisé pour la compilation du portail  et copié dans le webapps lors du deploiement) (utilisé aussi lors de la compilation des test)
  • test : utilisé uniquement pour la compilation des tests

Les canaux

Au cours de la vie du portail, l'administrateur est amené à gérer son contenu : ajout / modification de canaux, modifications de fragments, ...

Il faut donc faire en sorte que ces actions soient les plus pérennes possibles, et qu'un retour en arrière soit possible simplement en cas de modification malheureuse.

L'utilisation de lien symbolique semble la meilleur solution.

Numérotation de version 

Les noms des packages Esup suivent la norme suivante : esup-A-esup-B.C.D[-RCE

Avec :

  • A : le numéro de version de uPortal embarqué
  • B : c'est une mise à jour majeure. Une procédure spécifique doit être mise en oeuvre.
  • C : C'est une mise à jour 'intermédiaire'. Elle peut nécessiter une mise à jour de la base de données, de JVM, ... Une procédure spécifique peut être nécessaire.
  • D : C'est une mise à jour mineure ; ce document devrait suffire à couvrir les contraintes liées à ces mises à jour.
  • Présence de RCE : Release Candidate, la version n'est pas encore stable a 100% mais proche de l'être.

Compte utilisateur "esup"

Il est fortement conseillé d'installer un serveur apache en frontal d'esup-portail, via mod_jk (ou mod_proxy en apache 2.2).

Il n'est donc pas nécessaire que le lancement d'esup-portail (en fait, le serveur J2EE supportant esup-portail) se fasse sous le compte root, puisque le port TCP APJ13 peut être supérieur à 1024.

Nous supposerons ici qu'un compte esup est créé.

Toutes les actions nécessaires au fonctionnement d'esup-portail (à l'exception du frontal apache) seront faites sous le compte 'esup'. Tous les chemins file système paramétrés seront accessibles en écriture par ce compte.

Exemple d'organisation FileSystem

On va séparer l'environnement de paramétrage/compilation de l'environnement de production.

Dans cet exemple, l'environnement de paramétrage/compilation sera /home/esup/src, l'environnement de production /home/esup/webapps.

On suppose que le package à installer est esup-2.6-esup-2.X.Y ; il est désarchivé dans /home/esup/src/esup-2.6-esup-2.X.Y.

Voici un extrait du fichier esup.properties correspondant à l'exemple de ce document :

extrait de custom.properties
 

java_home=/usr/java/jdk1.5

esup.sources=/home/esup/src/uPortal_rel-${uportal.ver}
esup.deploy=/home/esup/webapps
server.home=/home/esup/tomcat
server.temp=/home/esup/temp
esup.custom=/home/esup/custom

 

  • /ur/java/jdk1.5 est un lien symbolique vers la JVM 1.5 courante.
  • /home/esup/src/esup-package est un lien symbolique vers le répertoire de décompactage du package, ici src/esup-2.6-esup-2.X.Y.
  • /home/esup/src/esup-sources est un lien vers le répertoire src/uPortal_rel-2.6.1-GA (à créer avant ant esup.unzip).
  • /home/esup/webapps est un lien symbolique vers webapps-X.Y
  • /home/esup/tomcat est un lien symbolique vers apache-tomcat-5.5.26
    On crée également le répertoire /home/esup/canaux, qui sera la racine de désarchivage des différents canaux installés.

Les personnalisations

Les personnalisations propres à l'établissement se trouvent dans le répertoire /home/esup/custom, lui-même subdivisé en sous-répertoires : Tomcat, uPortal.

Vous aurez au moins les choses suivantes dans le répertoire custom :

  • custom/uPortal/properties : On devrait y trouver au moins les fichiers suivants :
    • personDirectory.xml : ce fichier permet de faire un 'mapping' entre des attributs LDAP (ou issus d'une base SQL) avec des attributs uPortal. Voir ce document sur le wiki uportal.
    • groups/PAGSGroupStoreConfig.xml : définition des groupes dynamiques uPortal. Voir ce document sur le wiki uportal.
    • chanpub/XXXXX.xml : les fichiers de publication des différents canaux. Même s'il est possible de déclarer / modifier dynamiquement dans uPortal les canaux, nous préconisons de le faire par la publication de ces fichiers de description (utilisés par la commande ant uportal.pubchan), ceci afin de les rejouer ultérieur.
    • dlm.xml : les modèles d'environnement utilisateurs poussés pour cette instance d'esup-portail.
    • layouts/XXXX.xml : fichier cml réprésentant un modèle d'environnement utilisateur pour une population donnée
  • custom/uPortal/lib : comme indiqué dans un paragraphe suivant, ce répertoire contiendra les librairies (fichiers .jar) nécessaires à l'exécution de certains canaux.
  • custom/uPortal/webpages : contiendra les éventuels skins de l'établissement.

Première installation du portail

On utilise la procédure 'normale' :

  1. ant -buildfile /home/esup/src/esup-package/build.xml getcomponents
  2. ant -buildfile /home/esup/src/esup-package/build.xml unzip
  3. ant -buildfile /home/esup/src/esup-package/build.xml init
  4. ant -buildfile /home/esup/src/esup-package/build.xml db.test
  5. ant -buildfile /home/esup/src/esup-package/build.xml db.init
  6. ant -buildfile /home/esup/src/esup-package/build.xml deploy
  7. /home/esup/src/esup-package/start-esup.sh

Installation d'une nouvelle version du package

Ce paragraphe décrit l'installation une version mineure, qui n'impacte pas la base esup-portail.

Grâce aux différents liens symboliques utilisés, on s'assure d'un retour en arrière facile.

On suppose ici qu'on installe la version esup-2.6-esup-2.0.2.

Les liens symbolique 

On déporte les différents liens symboliques vers les nouveaux répertoires :

  • /home/esup/src/esup-package vers src/esup-2.6-esup-2.0.2.
  • /home/esup/src/esup-sources vers src/uPortal_rel-2.6.2-GA
  • /home/esup/webapps vers webapps-2.6-esup-2.0.2
    Décompresser le package dans /home/esup/src donc vers src/esup-2.6-esup-2.0.2

Pour vos personnalisations 

D'une manière générale, commencer par lire le fichier CHANGELOG de la nouvelle version du package.

Les modifications qui sont fortement susceptibles de nécessiter des modifications de paramètres sont préfixés de 5 étoiles "*****".

Properties 

cp src/esup-2.6-esup-2.0.1/custom.properties src/esup-2.6-esup-2.0.2/

Installation

Comme l'installation originale, sans l'installation de la base :

  1. ant -buildfile /home/esup/src/esup-package/build.xml getcomponents
  2. ant -buildfile /home/esup/src/esup-package/build.xml unzip
  3. ant -buildfile /home/esup/src/esup-package/build.xml init
  4. ant -buildfile /home/esup/src/esup-package/build.xml deploy
    Redéployer vos canaux.

Arrêt - Relance du portail

D'une manière générale, il est préconisé de faire un redémarrage du portail à intervalles réguliers, toutes les nuits par exemple.

 

  • Aucune étiquette

Commentaire

  1. La target "ant unzip" décompacte le package uPortal si le répertoire esup-sources n'existe pas. Cela me paraît donc contraire à la remarque "à créer avant ant esup.unzip" (ant unzip ?)  dans le paragraphe "Exemple d'organisation FileSystem".