Pas à pas pour réaliser une montée de version vers le Thème 2.0
Pas à pas
Ce pas à pas est prend l'exemple d'une mise à jour d'un site en version 1.4 du Thème et d'une version 7.0 de Lutece.
Les étapes
-
Une montée de version nécessite de modifier d'abord le fichier "pom.xml" -dans le cas d'un projet LUTECE- et de modifier les versions si nécessaire de Lutece -lutece-core-, de plugins et évidemement du thème "Paris.fr"
<dependency> <groupId>fr.paris.lutece</groupId> <artifactId>lutece-core</artifactId> <version>[7.0.0][7.1.0];</version> <type>lutece-core</type> </dependency> <dependency> <groupId>fr.paris.lutece.themes</groupId> <artifactId>site-theme-parisfr</artifactId> <version>[1.4.2][2.0.0]</version> <type>lutece-site</type> </dependency>
- Une montée de version va nécessiter tout d'abord de verifier quels sont les mises à jour à faire sur la base de données.
Pour cela il faut vérifier si des scripts de montée de version existent dans les dossier "WEB-INF/sql/upgrade" pour le CORE et le "Thème Paris.fr" ou "WEB-INF/sql/plugins/nomduplugin/upgrade" pour les plugins. - Recenser les surcharges présentent dans le site.
- Procéder au nettoyage des surcharges -templates-.
- Déployer sans surcharges.
- Si nécessaire ajouter des surcharges -templates-.
Focus sur la mise à jour de la base de données :
- Lutece Core : Mise à jour de la version du CORE : 7.0.x -> 7.1.
Lister les fichiers "update_db_lutece_core-X.X.X-Y.Y.Y.sql" situés dans le répertoire "WEB-INF\sql\upgrade". Il faut alors exécuter tous les fichiers dans l'ordre des versions.
Dans notre exemple il suffisait d'exécuter le fichier "update_db_lutece_core-7.0.16-7.0.17.sql". - Thème Paris.fr : Passage de la 1.45 -> 2.0.0 - > 4 Scripts dans l'ordre update_db_themeparisfr-1.4.2-1.4.6 .sql, update_db_themeparisfr-1.4.6-1.5.3.sql, update_db_themeparisfr-1.5.3-1.5.4.sql et update_db_themeparisfr-1.5.5-2.2.0.sql. N.B.: Cela nécessite peut être d'ajuster les valeur dans les "Propriétés du Site", onglet "Thème Paris.fr" en BO comme celle sur l'affichage des menus.
- Plugins : Montée de version du plugins FORMS : de la version 2.4.5 à la version 3.0.0.
Aucun script à passer
N.B.: Plus votre application sera ancienne, plus il faudra vérifier plugin par plugin la liste des script d'upgrade situé dans le dossier "WEB-INF\sql\plugins\NOM_DU_PLUGIN\upgrade". N.B. : Après mise à jour, il faut vérifier que la table core_datastore contient bien tous les paramètres nécessaires au fonctionnement du thème, que tous les scripts d'upgrade du thème aient bien été passés. Si ce n'est pas le cas cela peut occasionner des erreurs bloquantes dès le démarrage du site.
Focus sur les templates :
- Passer en revue les templates en vérifiants les modification dans les rubriques "Composants" et autres pages de la documentation.
- Il faut parfois supprimer, parfois remplacer des nom de classes "css". Si l'on prend l'exemple des classes qui gères les marges "py-N" et "my-N" il faut surtout les supprimer des blocs principaux (div,p,articles,.portlet) car cela ajoute des marges aux marges définies par défaut. Parcontre il est possible que vous ne deviez simplement procéderà une substitution des anciennes classes BS4 par les classes du Thème. Par exemple, changer une classe "mt-4" en "mt-m"
Attention aussi aux classes mb-X mais par défaut ce sont toujours les marges hautes (mt-X) qui sont utilisées pour l'espacement des contenus.
Exemple de code à modifier : <@cRow class="white-bg-color py-5 my-5py-l my-l justify-content-center">...<@cRow> - Souvent dans les templates on été ajoutées des classes pour ajuster les marges entre les éléments structurants. Il faut les supprimer car par défaut le thème gère la majorité des cas de figures pour l'espacement des contenus.
- Vérifier les macros. Les macros évoluent et il est possible que certains paramètres aient été supprimés ou ajouter.
N.B.:Si un paramètre est supprimé la macro ne provoque pas d'erreur mais ajoute un message dans le code HTML.
N.B.:L'ajout de paramètre peut améliorer vos contenus et supprimer une surcharge.
Focus sur les contenus :
- Modification des rubriques de contenus contenant du code HTML généré. Il est possible que le code ne soit plus le même, comme c'est le cas pour le composant "Alert". Il faut alors bien consulter la documentation pour faire la correspondance du code HTML car souvent on ne pourra pas utiliser les macros dans les "Rubriques" gérées par l'administration du site.
- Modification des feullles de styles -XSL- quand elles embarquent un composant impacté. Dans le cas présent, il a fallu modifier la XSL d'un portlet HTML - plugin HTML- qui contient le code du composant "Alert". N.B.: Il ne s'agit de modifier une feuille de style en BO. Pour cela il faut la télécharger et la reuploader dans la menu "Charte / Gestion des feuilles XSL"