-
Notifications
You must be signed in to change notification settings - Fork 14
Mise à jour
Avant toute mise à jour, pensez à faire une sauvegarde de la base de données
- Téléchargez le fichier zip contenant les sources de la dernière version (informations et sources)
- transférez le fichier zip sur le serveur, au même niveau de l'arborescence que le HOME de votre instance de VelObs en production (e.g. velobsProd)
- dézippez le fichier zip, vous obtiendrez le répertoire de VelObs "velobsNewVersion"
- copiez le fichier velobsNewVersion/upgradeVelobs.sh au même niveau que velobsNewVersion et velobsProd
- exécutez la commande
sh upgradeVelobs.sh
et suivez les instructions du script de mise à jour. - si vous ne pouvez pas exécuter le script
upgradeVelobs.sh
...va falloir tout se faire à la mimine....mais ça va, c'est faisable ;)
Celui-ci vous demandera :
- le nom du répertoire (en relatif) où se trouve la version de VelObs à passer en production (e.g. velobsNewVersion)
- le nom du répertoire (en relatif) où se trouve la version de VelObs en production (e.g. velobsProd)
- un nom de version (e.g. 1_3)
Il vérifiera un minimum de choses :
- existence des répertoires précités,
- absence des fichiers key.php et key.js dans le répertoire où se trouve la version de VelObs à passer en production
Si tout est OK, il fera automatiquement (étapes à faire à la main si vous ne pouvez pas exécuter le script upgradeVelobs.sh sur le serveur où est hébergé velobs) :
- copier velobsProd/resources/pictures dans velobsNewVersion/resources (photos associés aux observations)
- copier velobsProd/resources/images dans velobsNewVersion/resources (logos, images utilisées dans les interfaces)
- copier velobsProd/resources/icon/marker dans velobsNewVersion/resources/icon/ (icônes associées aux catégories d'observation)
- copier velobsProd/css/iconmarker.css dans velobsNewVersion/resources/css/ (feuille de style associant des règles d'affichage aux icônes associées aux catégories d'observation)
- copier velobsProd/lib/php/key.php dans velobsNewVersion/lib/php/ (fichier de config)
- copier velobsProd/lib/js/key.js dans velobsNewVersion/lib/js/ (fichier de config)
Modifier le contenu de velobsNewVersion/lib/php/key.php et velobsNewVersion/lib/js/key.js en fonction du contenu des fichiers respectivement velobsNewVersion/lib/php/key.php.template et velobsNewVersion/lib/js/key.js.template (le cas échéant ce sera précisé dans le paragraphe associé à la version de VelObs que vous êtes en train de mettre à jour ci-dessous)
Après cela, le script (étapes à faire à la main si vous ne pouvez pas exécuter le script upgradeVelobs.sh sur le serveur où est hébergé velobs) :
- donnera les droits d'écriture sur les répertoires velobsNewVersion/resources/pictures, velobsNewVersion/resources/icons, velobsNewVersion/resources/csv (répertoire où sont enregistrés les fichiers plats contenant les observations en téléchargement) et velobsNewVersion/resources/css
- permutera les répertoires velobsProd et velobsNewVersion (velobsProd sera renommé en velobsProdTimeStamp et velobsNewVersion sera renommé en velobsProd)
- demandera d'exécuter le script URL_VelObs/resources/upgrade/upgradeSQL-[NumeroDeVersion].php s'il existe, après vous être connecté avec un compte administrateur sur VelObs. Ce script php permet d'exécuter des requêtes SQL nécessaires à la mise à jour de VelObs (le cas échéant ce sera précisé dans le paragraphe associé à la version de VelObs que vous êtes en train de mettre à jour ci-dessous)
Effacez les scripts dans velobsProd/resources/upgrade/ une fois que vous avez validé la bonne exécution.
Ci-dessous une capture d'écran du passage à la version V1_3 :
- Vous pouvez passer à la version 1.3 depuis n'importe quelle version antérieure
- le script URL_VELOBS/resources/upgrade/upgradeSQL-V1_3.php permet de fusionner automatiquement les tables photos et commentaires de la version 1.2 et antérieures , dans la table commentaires de façon à n'avoir plus qu'une seule table permettant d'améliorer cette fonctionnalité (lien entre texte et photo + e-mail de la personne qui a soumis + date de création)
- Vous pouvez passer à la version 1.4.2 depuis n'importe quelle version >= 1.3
- je n'ai pas pris le temps de créer le script php permettant de mettre à jour l'encodage de la base de données - il faut exécuter les requêtes SQL présentes dans l'issue #94
- le fichier URL_VELOBS/lib/js/key.js doit être mis à jour avec l'ajout de la variable LOAD_ALL_OBSERVATIONS_DEFAULT (cf fichier key.js.template)
- Vous pouvez passer à la version 1.4.3 depuis n'importe quelle version >= 1.3
- Si upgrade depuis une version < 1.4.2, il faut exécuter les requêtes SQL présentes dans l'issue #94
- le fichier URL_VELOBS/lib/js/key.js doit être mis à jour avec l'ajout de la variable LOAD_ALL_OBSERVATIONS_DEFAULT, la définition des layers... (cf fichier key.js.template)
- le fichier URL_VELOBS/lib/php/key.php doit être mis à jour avec l'ajout des constantes INCLUDE_CODE_HTML_PUBLIC (code HTML inclus en fin de fichier index.php) et INCLUDE_CODE_HTML_ADMIN (code HTML inclus en fin de fichier admin.php)
- Vous pouvez passer à la version 1.5 depuis n'importe quelle version >= 1.4.2
- le script resources/upgrade/upgradeSQL-V1_5.php doit être exécuté (cryptage des mots de passe pour plus de sécurité)
- le fichier lib/php/key.php doit être modifié :
- la constante HOST doit être renommée en DB_HOST
- ajouter le port mysql utilisé à DB_HOST (e.g. "define('DB_HOST', 'localhost');" devient "define('DB_HOST', 'localhost:3306');")
- la constante PORT peut être supprimée
- ajouter la constante PAGE_TITLE (e.g. "define('PAGE_TITLE','VelObs'); //text inserted in the title of the web page index.php")
- ajouter la constante INCLUDE_CODE_HTML_PUBLIC_LOADING (e.g. define('INCLUDE_CODE_HTML_PUBLIC_LOADING','VelObs - 2P2R');//html code displayed during the loading of the application)
- Vous pouvez passer à la version 1.5.1 uniquement depuis la version 1.5
- le champ reponsegrandtoulouse_poi de la table poi est renommé en reponse_collectivite_poi pour une meilleure généricité. Exécuter la requête suivante : ALTER TABLE poi CHANGE reponsegrandtoulouse_poi reponse_collectivite_poi mediumtext;
- ajout d'une couleur à chaque statut donné par la collectivité pour différencier les observations sur la carte : ALTER TABLE status ADD color_status varchar(20); UPDATE status SET color_status = 'black';
- Vous pouvez passer à la version 1.5.2 uniquement depuis la version 1.5.1
- après remplacement des sources, connectez-vous avec un compte administrateur sur VelObs et allez sur la page URL_VelObs/resources/upgrade/upgradeSQL-V1_5_2.php pour mettre à jour la base de données (meilleure configuration des priorités)
- exécutez les requêtes SQL suivantes (oubli de ma part, elles auraient dû être ajoutées dans le script upgradeSQL-V1_5_2.php), cf issue 151 👎
- ALTER TABLE commentaires CHANGE display_commentaires display_commentaires VARCHAR(20) NOT NULL DEFAULT 'Non modéré';
- update commentaires set display_commentaires = 'Non modéré' WHERE display_commentaires = 0;
- update commentaires set display_commentaires = 'Modéré accepté' WHERE display_commentaires = 1;
- Vous pouvez passer à la version 1.6 uniquement depuis la version 1.5.2
- après remplacement des sources, connectez-vous avec un compte administrateur sur VelObs et allez sur la page URL_VelObs/resources/upgrade/upgradeSQL-V1_6.php pour mettre à jour la base de données (gestion de l'historique des observations et des commentaires)
- Attention : ce script installe un déclencheur (trigger) qui peut nécessiter des droits particuliers. Si ces déclencheurs ne sont pas créés, l'historisation ne se fera pas
- Vous pouvez passer à la version 1.6.2 uniquement depuis les versions 1.6 et 1.6.1
- après remplacement des sources, connectez-vous avec un compte administrateur sur VelObs et allez sur la page URL_VelObs/resources/upgrade/upgradeSQL-V1_6_2.php pour mettre à jour la base de données (ajout de la fonctionnalité d'inactivation d'un compte, possibilité de lier un modérateur à plusieurs pôles, ajout de la fonctionnalité de voter pour une observation, ajout de la possibilité d'être averti par mail sur mise à jour d'une observation)
- Vous pouvez passer à la version 1.6.3 uniquement depuis la version 1.6.2
- après remplacement des sources, connectez-vous avec un compte administrateur sur VelObs et allez sur la page URL_VelObs/resources/upgrade/upgradeSQL-V1_6_3.php pour mettre à jour la base de données (mise à jour de message dans la table translation)
- le fichier URL_VELOBS/lib/php/key.php doit être mis à jour avec l'ajout des variables PDF_VELOBS_ASSOCIATION_ADDRESS et PDF_VELOBS_ASSOCIATION_LOGO (cf fichier key.php.template, variables utilisées pour construire les exports pdf des observations)
- Vous pouvez passer à la version 1.7.0 uniquement depuis la version 1.6.3
- il n'y a rien de spécifique à faire pour cette mise à jour
- Vous pouvez passer à la version 1.7.1 depuis les version 1.6.3 et ultérieur
- après remplacement des sources, connectez-vous avec un compte administrateur sur VelObs et allez sur la page URL_VelObs/resources/upgrade/upgradeSQL-V1_7_1.php pour mettre à jour la base de données (configuration de l'affichage des observations par défaut selon les priorités)