Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.

Sommaire

Compilation


Bloc de code
languagebash
themeRDark
cd /opt/esup-signature 
# pour la première installation il faut installer les dépendances de sedalib en lancant 
mvn clean initialize 
# puis par la suite mvn clean initialize ne sera plus utile, la commande suivante sera suffisante 
mvn clean package

 A A la première compilation il est nécessaire de faire un mvn clean initialize pour installer les dépendances. Ensuite il faut lancer mvn clean package.

Lors de la compilation des tests d'intégration vont être exécutés, cela va vous permettre de contrôler votre configuration et votre environnement.

Si un test échoue (ERROR ou FAILURE) la compilation sera annulée.Dans le cas idéal tous les tests doivent passer.

Toutefois, selon votre configuration, certain certains tests sont évités (skippedSkipped). Cela veut dire que l'application peut être déployée mais que certaines fonctionnalités seront inopérantes (envoi de mail, certains workflows...)

...

Bloc de code
themeRDark
[INFO] [INFO] Results: [INFO] [WARNING] Tests run: 11, Failures: 0, Errors: 0, Skipped: 4 [INFO] [INFO]

Dans ce cas les test tests sont passés mais il y a des warnings. En remontant les logs on trouve par exemple :

Bloc de code
languagebash
themeRDark
2020-05-25 16:30:11.575 ERROR 3619 --- [me-limited test] o.e.esupsignature.WorkflowServiceTest : Test Workflow : VisaAndSignWorkflowTest KO org.esupportail.esupsignature.exception.EsupSignatureUserException: ldap user not found : user.test@univ-ville.fr

Il s'agit dans ce cas précis , cet exemple, d'une classe workflow (src/main/java/org/esupportail/esupsignature/service/workflow/impl/VisaAndSignWorkflowTest.java) qui est configurée avec un mail inconnu dans le LDAP. Une page dédiée explique le fonctionnement de ces classes paramétrable : 

...

Info

Il est possible d'éviter les tests en utilisant la commande mvn clean package -DskipTests mais des problèmes risquent de se poser lors du déploiement.

On obtient finalement le dossier target. On peut copier son contenu directement dans le dossier ROOT du server tomcat.


...

Déploiement / Lancement

Tomcat

On copie/colle le répertoire webapp packagé ainsi dans le tomcat : 

...

Remarque

Dans le cas de l'utilisation d'un proxy (apache proxypass par exemple) il est conseillé d'utiliser le protocole AJP. Si cela n'est pas possible il faudra utiliser le module remoteip qui permet de transmettre l'adresse IP réel du client au serveur tomcat (cela n'est pas necessaire en AJP). Pour ce faire il faut activer le module coté Apache:

ajouter le fichier mod_remoteip.conf dans le dossier conf.d/ et y inscrire :


LoadModule remoteip_module modules/mod_remoteip.so
RemoteIPHeader X-Forwarded-For
RemoteIPTrustedProxy 127.0.0.1 ::1

et ajouter une valve dans la configuration du serveur tomcat (server.xml) :

<Valve className="org.apache.catalina.valves.RemoteIpValve"

 remoteIpHeader="x-forwarded-for"
proxiesHeader="x-forwarded-by"
protocolHeader="x-forwarded-proto" />

Spring boot

On peut aussi démarrer l'application directement avec la commande suivante au niveau du répertoire des sources:

...