Skip to content

Mise à jour

gerald2545 edited this page Apr 30, 2018 · 36 revisions

Avant toute mise à jour, pensez à faire une sauvegarde de la base de données

Procédure globale

  • 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.

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 :

  • copiera velobsProd/resources/pictures dans velobsNewVersion/resources (photos associés aux observations)
  • copiera velobsProd/resources/icon/marker dans velobsNewVersion/resources/icon/ (icônes associées aux catégories d'observation)
  • copiera velobsProd/lib/php/key.php dans velobsNewVersion/lib/php/ (fichier de config)
  • copiera 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 (non nécessaire pour passer de la version 1.2 à 1.3, aucune modification n'y ayant été apportée)

Après cela, le script :

  • 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)
  • switchera les répertoires velobsProd et velobsNewVersion (velobsProd sera renommé en velobsProdTimeStamp et velobsNewVersion sera renommé en velobsProd)
  • vous 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

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 :

Vers la version 1.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)

Vers la version 1.4.2

  • 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)

Vers la version 1.4.3

  • 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)

Vers la version 1.5

  • 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)

Vers la version 1.5.1

  • 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';

Vers la version 1.5.2

  • 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;

Vers la version 2 (non encore diffusée, en cours de tests)

Clone this wiki locally