Arborescence des pages

Vous regardez une version antérieure (v. /wiki/pages/viewpage.action?pageId=818708487) 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. 30) afficher la version suivante »

Compilation

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 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 tests sont évités (skipped). Cela veut dire que l'application peut être déployée mais que certaines fonctionnalités seront inopérantes (envoi de mail, certains workflows...)

Voici un exemple de résultat obtenu :

[INFO] [INFO] Results: [INFO] [WARNING] Tests run: 11, Failures: 0, Errors: 0, Skipped: 4 [INFO] [INFO]

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

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 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 : 

Créer une classe workflow

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 : 

rm -rf /opt/tomcat-esup-signature/webapps/ROOT && cp -rf /opt/esup-signature/target/esup-signature /opt/tomcat-esup-signature/webapps/ROOT

On arrête le tomcat avant et on le redémarre ensuite

Paramétrage mémoire JVM :

Pensez à paramétrer les espaces mémoire JVM :

export JAVA_OPTS="-Xms1024m -Xmx1024m -XX:MaxPermSize=256m"

Pour maven :

export MAVEN_OPTS="-Xms1024m -Xmx1024m -XX:MaxPermSize=256m"

Démarrage :

/opt/tomcat-esup-signature/bin/startup.sh

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 d'y inscrire :


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

et ajoute 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:

mvn spring-boot:run




Bravo, l'installation est terminée !



  • Aucune étiquette