Aller au contenu

Sauvegarde du site Geotribu#

icône résilience

Afin de ne pas reproduire le drame du crash de la base de données (voir l'article sur la petite histoire de Geotribu), le site recréé en 2020 est pensé pour maximiser la résilience :

  • il s'agit d'un site statique : aucune base de données n'est à optimiser/maintenir/sécuriser, exceptée celle des commentaires mais qui n'est pas critique pour le fonctionnement global
  • les contenus sont rédigés en Markdown, une syntaxe ouverte, lisible même dans sa forme "brute" et compatible avec énormément d'outils capables de la rendre en version "nette"
  • les contenus sont donc des fichiers à plat stockés sur GitHub dont l'infrastructure est à l'évidence infiniment plus robuste que ce que l'on serait en mesure de proposer par nous-mêmes
  • le principe de contribution étant fortement lié au système de versionnement décentralisé Git, des copies des contenus existent sur différentes machines

Les seuls éléments non couverts directement par ces différents points sont donc les fichiers d'illustration : images, documents, etc.

GitHub CLI et GitHub Release#

logo GitHub

Pour couvrir cet aspect, nous avons mis en place un mécanisme de sauvegarde qui tire également parti de la plateforme GitHub : Github Release et GitHub CLI.

Ainsi, tous les mois, le script :

  1. compresse l'ensemble des fichiers du pseudo-CDN
  2. étiquette le dernier commit (git tag) avec un numéro de version calendaire de la forme YYYY.MM
  3. crée une "release" sur GitHub en joignant l'archive compressée
  4. notifie l'équipe sur Slack

Sauvegarde - Notification Slack

Télécharger la dernière sauvegarde

Voici à quoi ressemble une GitHub Release :

Capture d'écran d'une GitHub Release du site Geotribu

Comme toujours, le code et fichiers de configuration sont librement accessibles :

Fichiers de configuration et documentation

Pour la sobriété numérique#

logo environnement

Afin de ne pas encombrer inutilement des serveurs, et donc de les faire tourner pour peu de choses et consommer de l'énergie, il est préférable de garder le moins possible de fichiers joints aux sauvegardes. Seuls les fichiers des sauvegardes la plus récente et la plus ancienne peuvent être utiles un jour. Il est en revanche important de garder les sauvegardes et de ne supprimer que le fichier tar.gz joint.

Dans un premier temps, il a été décidé de réaliser cette opération à la main :

  1. Se rendre sur la page Github Releases du site web de Geotribu
  2. Editer la sauvegarde à effacer pour l'éditer
  3. Supprimer le fichier tar.gz attaché
  4. Valider la modification en cliquant sur Update release

🐻 Bien joué, les ours polaires vous remercieront un jour !


  1. étape où un contributeur propose d'intégrer ses modifications dans le socle principal du projet. Voir la documentation de GitHub

Commentaires


Ce contenu est sous licence Creative Commons BY-NC-SA 4.0 International Pictogramme Creative Commons Pictogramme Creative Commons BY Pictogramme Creative Commons NC Pictogramme Creative Commons SA