Projet Socle ENT
Pages enfant
  • 06 - Conseils d'utilisation

Vous regardez une version antérieure (v. /wiki/spaces/ESUPMU/pages/3932223/06+-+Conseils+d+utilisation) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 5) afficher la version suivante »

 

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 : utiliser pour la compilation du portail  et copier dans le webapps lors du deploy)
  • container-common : utiliser pour la compilation du portail et copier dans Tomcat/common/lib si (tomcat.update.lib=true)
  • container-common-endorsed : utiliser pour la compilation du portail et copier dans Tomcat/common/endorsed si (tomcat.update.lib=true)
  • container-shared : utiliser pour la compilation du portail et copier dans Tomcat/shared/lib si (tomcat.update.lib=true)
  • portlets : les portlets exemple du portail
  • provided : utiliser pour la compilation du portail uniquement
  • runtime : utiliser pour la compilation du portail  et copier dans le webapps lors du deploy) (utiliser aussi lors de la compilation des test)
  • test : utiliser uniquement pour la compilation des test

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 de package esup suive 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 à ce compte.

Exemple d'rganisation 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 fragments poussés pour cette instance d'esup-portail.
    • layouts/XXXX.xml : fichier cml répresentation des environnements utilisateurs modèle pour des popuplations
  • custom/uPortal/lib : comme indiqué dans un pragraphe suivant, ce répertoire contiendra les librairies (fichiers .jar) nécessiare à l'exécution de certains canaux.
  • custom/uPortal/webpages :ca contenir 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.

Grace 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 custom 

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 à intervalle régulier, toutes les nuits par exemple.

 

  • Aucune étiquette