Gestion:Infrastructure

De Wikimedica
Révision datée du 7 juillet 2018 à 22:29 par Antoine Mercier-Linteau (discussion | contributions) (Ajout notes et forcé la version de php)

Mise à jour logicielle

Cette section explique la procédure de mise à jour de l'infrastructure informatique de Wikimedica. Idéalement, il est préférable de faire la mise à jour sur le serveur de test, de tester les fonctionnalités clés, puis d'appliquer les changements sur le serveur de production.

Changement de version majeure

Lors d'un changement de version majeur de MediaWiki, il est indiqué de suivre ces étapes:

Au préalable, faire un dump de la base de donnée:

mysqldump --socket=/var/lib/mysql/mysql57.sock -u wikimedica -p wikimedica > wikimedica.dump

Puis:

git checkout <branchname>
git submodule foreach 'git checkout -b <branchname> origin/<branchname> || :'
/usr/bin/php71  composer.phar update --no-dev
/usr/bin/php71 maintenance/update.php[note 1]

Changement de version mineure

git pull 
git submodule update --init --recursive
/usr/bin/php71  composer.phar update --no-dev
/usr/bin/php71  maintenance/update.php[note 1]

Mise à jour des services satellites

Parsoid

cd /opt/parsoid
sv d /service/parsoid
npm update
sv u /service/parsoid

Restbase

cd /opt/restbase
sv d /service/restbase
git pull
npm update
sv u /service/restbase

Resynchronisation du serveur de test

sudo rm -rf /home/e-smith/files/ibays/test/html/images/*
sudo cp -a /home/e-smith/files/ibays/Primary/html/images/. images/
mysqldump --socket=/var/lib/mysql/mysql57.sock -u wikimedica -p wikimedica > wikimedica.dump
mysql --socket=/var/lib/mysql/mysql57.sock -u wikimedicatest -p wikimedicatest < wikimedica.dump
rm wikimedica.dump
sudo cp -f /home/e-smith/files/ibays/Primary/html/LocalSettings.php /home/e-smith/files/ibays/test/html/LocalSettings.php

Fonctionnalités à tester

Durant les tests, la console de déboggage du navigateur doit être ouverte afin d'attraper les erreurs javascript.

  1. Édition d'article avec l'ÉditeurVisuel
  2. Téléversement d'images avec l'ÉditeurVisuel
  3. Affichage d'une page avec des fonctionnalités sémantiques (ex: Wikimedica:Tâches)
  4. Création d'une page avec un formulaire (ex: création d'une tâche)
  5. Génération de livres PDF

Notes

  1. 1,0 et 1,1 Si update.php donne des erreurs de version de paquet incongrues, utiliser --skip-external-dependencies