Skip to content
This repository has been archived by the owner on Mar 7, 2023. It is now read-only.

Opérations de nettoyage

Brandone MARTINS edited this page Apr 21, 2017 · 7 revisions

Il est important de nettoyer régulièrement les ressources consommées / réservées par les review apps (RA).

Le risque (jusqu'au déploiement de l'architecture v3) est tout simplement de faire tomber la production, par manque de ressources (espace disk, RAM, COPU, etc.).

Le nettoyage se fait à 3 endroits :

  • sur les branches GitHub
  • sur GitHub Pages
  • sur le serveur d'API OVH

Nettoyage des branches GitHub

Depuis l'interface de GitHub, se rendre sur la page gestion des branches et fermer / supprimer les branches obsolètes.

Nettoyage de GitHub Pages (front)

Chaque RA donne lieu à la création d'un répertoire éponyme sur la branche gh-pages.

Exemple : soit la story dont l'identifiant de carte est #123 dans Trello et la feature branche Git associée "123-foo-bar", alors, au premier push sur GitHub, sur la branche gh-pages, un sous-répertoire live/123-foo-bar sera créée.

Avec le temps, les sous-répertoires s'accumulent, ce qui peut allonger le temps de récupération du checkout initial et entraver la navigation dans la branche (ex : en cas de problème de déploiement).

La manipulation de nettoyage consiste à régulièrement supprimer les répertoires de RA qui ne sont plus utilisés (i.e. dont la branche a été mergée sur dev & close). Ces repertoires sont situés dans le dossier live.

$ git checkout gh-pages
$ git pull
$ rm -rf 123-foo-bar
$ git add .
$ git commit -m "Remove deprecated review app 123-foo-bar"
$ git push

Nettoyage du serveur OVH (API)

De la même façon que les répertoires s'accumulent sur gh-pages à chaque nouvelle feature-branch, les applications Dokku s'accumulent sur le serveur d'API. Avec le temps, toutes ces applications consomment inutilement des ressources qui peuvent manquer cruellement à la production (espace disque, RAM, CPU, threads, file descriptors, etc.).

Et de même qu'il convient de supprimer régulièrement les fichiers de la branche gh-pages, il est sain de supprimer les applications Dokku obsolètes :

# depuis le serveur d'API
$ dokku apps                              # pour avoir la liste des apps Dokku déployées
$ dokku apps:destroy 123-foo-bar --force  # pour supprimer une app obsolète