Groupe 1A (socle)

Date de création : 9 mars 2004
Dernière modification : 26 novembre 2004
Diffusion : internet

esupdev2.3
Installation d'un environnement de test et de prise en main esup-portail

Ce document décrit comment installer et utiliser le package 'environnement de prise en main esup-portail' esupdev2.3 issu de la distribution uPortal 2.3.
Cet environnement peut être utilisé à des fins de test esup-portail, ou de mise en oeuvre rapide d'un environnement de développement, ceci depuis un système windows ou linux.

Il installe à la fois le serveur Tomcat, un serveur HSQL, la distribution uPortal et des apports esup-portail.

Il s'appuie sur l'installation 'quick-install' d'uportal V2.3 (voir les documents Windows et Linux), et ajoute la 'couche' esup-portail (voir le document associé).

Il livre donc un environnement complet du portail, comprenant les différentes librairies d'accès au SGBD, à LDAP, et d'interfacage avec le mécanisme de SSO CAS.
Il ne livre pas les différents canaux esup-portail, à installer indépendamment .

La base liée à ce package peut être initialisée de 2 manières :

Un fichier de propriété unique permet de paramétrer tout cet environnement d'un manière simple.

La mise en oeuvre est donc très rapide.

L'espace de download est accessible ici.

Le fichier CHANGELOG est également consultable.

L'utilisation du package de mise à jour fait l'objet d'un paragraphe spécifique.
A noter que les mises à jour de ce package n'incluent pas les patchs de la release uportal.

Enfin, le document décrivant l'installation et le paramétrage du package esup-portail est également disponible.


Le sommaire de ce document est le suivant :

Description du package esupdev

Fonctionnalités

En plus de la distribution quick-install 2.3, ce package propose :

Contenu

La racine du package est : esupdev-2.3

Sous cette racine se trouvent différents fichiers ou répertoires.

Les principaux fichiers sont :

Et les sous répertoires de premier niveau :

En résumé : l'utilisateur ne devrait modifier que le fichier esupdev-2-3.properties (et encore, celui-ci pourrait être proposé pour un établissement), perso.properties, et éventuellement déposer des fichiers dans les répertoires Perso/Tomcat et/ou Perso/uPortal et/ou Perso/ROOT.

Remarque : pour le bon fonctionnement du package, seuls les fichiers properties suivants peuvent se trouver à la racine :

Installation et personnalisation du package

On suppose ici une installation sous Windows, dans le répertoire C:\esupdev. La procédure est quasiment identique sous linux (à l'extension des scripts près).

Pré-requis

On suppose que la JVM est déja installée.

La télécharger par exemple à :
http://java.sun.com/j2se/1.4.2/download.html

si on ne désire pas utiliser la distribution HSQL incluse, il faut au préalable créer la base uPortal.

Installation et personnalisation rapide

On suppose ici une installation sous Windows, avec la JVM installée dans \j2sdk1.4.2_03 et ce package dans \esupdev.

Remarques

Passage d'un environnement uPortal vers un environnement esup-portail

Il est possible de passer alternativement de la base uportal à la base esup-portail :

Comptes locaux disponibles

Ce sont des comptes préparamétrés dans la base locale uPortal

Arrêt / Relance du serveur

Le lancement du serveur peut se faire de 2 manières :

La seconde méthode peut être utile dans le cas d'utilisation de l'environnement de développement éclipse

L'arrêt du serveur peut également se faire de 2 manières :

Remarque : pour les personnes désirant utiliser la base hsql, il est nécessaire de la lancer auparavant :
ant hsql.start

Directives ant

Les directives ant utilisables sont réparties en différentes catégories :

Directives liées au package

ant esup.init

Cette directive applique la personnalisation esup-portail à la distrib quick-install d'uPortal.

pour devenir opérationnelle, cette directive doit être suivie d'un ant uportal.deploy, puis d'un arrêt / relance de tomcat.

ant esup.clean

Cette directive remet la distribution quick-install d'uPortal dans son état initial

Faire un ant esup.clean avant tout changement de paramètre esup.uri ou esup.deploy, sinon certains fichiers ne pourront plus être effacés.

Après un ant esup.clean, il faudra nécessairement refaire un ant esup.init, puis ant uportal.deploy, puis éventuellement, ant esup.db.init.

ATTENTION : ceci supprime également le répertoire de l'environnement d'exécution d'uPortal (esup.deploy)

ant esup.db.init

Cette directive écrase la base uPortal. Voir paragraphe à ce sujet.

ant esup.users.ldapadd

Cette directive permet de 'précharger' les comptes utilisateurs uPortal à l'aide de comptes issus d'un annuaire LDAP.

Doit être lancée avec les paramètres nécessaires aux accès LDAP :

Exemples :

esup.users.ldapadd -DLdapURL="ldap://ldap.univ.fr/dc=univ,dc=fr"
    -DLdapFilter="(&(objectclass=inetorgperson)(cn=a*))"

esup.users.ldapadd -DLdapURL="ldap://ldap.univ.fr:392/dc=univ,dc=fr"
    -DLdapFilter="(&(objectclass=inetorgperson)(cn=a*))" 
    -DLdapLoginID=uid=admin,dc=univ,dc=fr -DLdapPass=password


Il est possible de relancer régulièrement cette commande afin de créer les comptes uPortal correspondant aux nouveaux comptes LDAP ; les anciens comptes ne sont pas impactés.

ant esup.groups.load

Cette directive permet de gérer les groupes uportal à l'aide d'un fichier de configuration xml.
Par défaut, le fichier utilisé est properties/groups/GroupLoad.xml

Voir la documentation de cet utilitaire.

Il supporte le paramètre dataFile, qui permet d'utiliser un autre fichier de configuration.

Exemple :

ant esup.groups.load -DdataFile=/properties/groups/esupGroupLoad.xml

ant esup.groups.perm.load

Cette directive permet de gérer les permissions liées aux groupes uportal à l'aide d'un fichier de configuration xml.
Par défaut, le fichier utilisé est properties/groups/GroupPermLoad.xml

Il supporte le paramètre dataFile, qui permet d'utiliser un autre fichier de configuration.

Exemple :

ant esup.groups.perm.load -DdataFile=/properties/groups/GroupPermLoadSample.xml

Directives liées à la distribution uportal

Ce sont les directives qu'on peut lancer habituellement depuis la distribution uPortal. Le principal intérêt de les reprendre est d'éviter d'avoir à se déplacer dans le répertoire de distribution uportal.
Un autre intérêt concerne les directives qui impactent la base uPortal (db, dbtest, initportal, ...) : normalement, il est nécessaire de désactiver l'utilisation jndi dans uportal.properties pour le faire.
Ici, ce n'est plus nécessaire.

Le nom de ces directives est le même que les directives fournies avec la distribution uPortal, en les préfixant de 'uportal.'.

Ainsi, les directives suivantes sont fournies :

uportal.projecthelp, uportal.all, uportal.clean, uportal.compile, uportal.deploy, uportal.dist, uportal.initportal, uportal.db, uportal.dbtest, uportal.pubchan, uportal.pushfragment, uportal.deployPortletApp, uportal.dbunload, uportal.javadoc, uportal.md5passwd, uportal.deluser

Remarque : ne plus utiliser la directive uportal.initportal. C'est la directive esup.db.init qui doit être utilisée.

En pratique, les directives uPortal dont vous aurez besoin sont :

Directives liées au lancement de tomcat

En production, il est préférable de lancer tomcat via un script, afin de maîtriser facilement les variables d'environnement liées à java et tomcat.

En développement, au moins avec eclipse, il peut être intéressant de pouvoir lancer / arrêter tomcat avec ant. Aussi, deux directives ant sont proposées.

Directives diverses

Pour les personnes désirant utiliser le SGBD HSQL fourni avec la distribution, le lancement de ce SGBD est prévu dans les directives ant :

ant hsql.start

Pour utiliser la base fournie avec la distribution quick-install d'uPortal, il est possible de laisser les paramètres suivants à leur défaut dans esupdev_2.3.properties :

esup.db.username=sa
esup.db.password=
esup.db.url=jdbc:hsqldb:hsql://localhost:8887
esup.db.jdbcDriverJar=hsqldb.jar esup.db.className=org.hsqldb.jdbcDriver

Propriétés du fichier esupdev-2.3.properties

Ce sont les propriétés possibles au niveau du fichier esupdev-2.3.properties.

Une seule est obligatoire : java_home ; pour les autres, une valeur par défaut est prévue.

A noter que tous les séparateurs de répertoire utilisent le caractère '/', même sous Windows.

Sous windows, et pour les chemins absolus, toujours préciser le nom de lecteur (ex : c:/esupdev).

Ces propriétés peuvent être également présentes dans le fichier perso.properties ; dans ce cas, elles sont prioritaires sur les propriétés de meme nom du fichier esupdev-2.3.properties.

Propriétés essentielles

Ce sont les propriétés dont la bonne valeur est indispensable à un fonctionnement minimum du package

Chemins File système

Paramètres http et ports TCP liés à esup-portail

Paramètres liés à LDAP

Ce sont des paramètres liés à l'authentification LDAP (si nécessaire), et à l'accès aux informations LDAP pour constituer des groupes ou des attributs uportal issus de requêtes LDAP.

Paramètres liés à CAS

Ce sont de paramètres liés à l'authentification CAS

Paramètres liés aux accès SGBD uportal

Paramètres divers

Utilisation de l'arborescence Perso

Le but est de vous permettre de modifier des fichiers de configuration, de source, ... tout en vous laissant la possibilité de faire ensuite une mise à jour du package, ou une nouvelle installation en récupérant facilement ses propres modifications.

L'arborescence Perso est découpée en 3 sous-répertoires, Tomcat, uPortal et ROOT, vides initialement. Elle est donc organisé comme le répertoire UpdateEsup.

Lors d'un ant esup.init, les arborescences UpdateEsup/Tomcat et UpdateEsup/uPortal sont recopiés dans l'environnement source uPortal, puis l'arborescence Perso ; enfin, les personnalisations sont appliquées dans les fichiers de configuration.

Si vous avez des fichiers qui vous sont propres (sources java, fichiers de config, fichiers Tomcat, ...), mettez les dans l'arborescence Perso.

Ceci vous permettra toujours de pouvoir modifier les fichiers de properties, voire de faire une mise à jour de votre package, ceci sans perdre vos personnalisations non prévues dans le package.

Remarques sur l'environnement esup-portail

Comme indiqué précédemment, le chargement de la base esup-portail (esup.db.init, avec esup.env.esup-portail à true) met le portail dans un environnement proche de celui d'exploitation.

En particulier, le compte 'demo' dont héritent les comptes uPortal créés n'appartient à aucun groupe ; il n'a donc aucun droit.

Le seul compte utilisable au démarrage est le compte admin.

Il faut donc que vous mettiez les nouveaux comptes créés dans un / des groupes uPortal afin qu'ils puissent disposer de certains droits.

Ceci est fait automatiquement par défaut si vous activez l'utilisation des groupes LDAP, et si votre annuaire est compatible supann :
la distribution utilise alors l'attribut LDAP 'eduPersonnAffiliation' pour mettre automatiquement le compte créé dans un des groupes 'Personnels', 'Etudiants', ou 'Invites'.

Sinon, en développement, il faut vous loguer une première fois avec un compte authentifié (CAS ou LDAP), afin de vous faire 'connaitre' du portail.
Ensuite, se déloguer et se reloguer en admin, et ajouter ce compte comme membre d'un des groupes existants (de préférence personnel ,etudiant, ou invité, pour ne disposer que des droits minimum).

Remarques diverses

Utilisation du package de mise à jour

Pour chaque nouvelle version de package est proposée une version de package de mise à jour.
La mise à jour permet de ne reprendre que la partie spécifique esup-portail, sans les distributions tomcat, ant et hsql; donc, un fichier beaucoup plus léger.
Et conserver vos personnalisations.

Pré-requis

L'utilisation du package de mise à jour n'est possible que si vous n'avez modifié aucun fichier de configuration ou de source dans l'environnement uPortal.

Procédure de mise à jour

Dézipper le package de mise à jour dans le même répertoire que celui dans lequel vous avez dézippé le package initial (vous devez donc voir le répertoire esupdev-2.3 comme sous répertoire).

A surveiller pour la mise à jour

La mise à jour n'écrase pas vos personnalisations. Par contre, il est possible que des propriétés des fichiers properties aient changées, ou qu'il y en ait de nouvelles.

Un fichier CHANGELOG.txt est fourni avec le package et la mise à jour.
Pour tout changement lié au fichier properties, 5 caractères * (*****) précèdent la remarque. Vous devez donc adapter votre fichier properties en conséquence.

En outre, un fichier "esupdev-2.3.properties.new" est fourni avec la mise à jour ,qui est la copie du fichier esupdev2.3.properties du package complet.

Ce que ca fait

La même chose que le package initial, sans les packages tomcat, ant et hsql, sans les fichiers de scripts ou properties.

Ce qu'il faut faire après