Je ne me tromperai plus jamais d'environnement !
Présentation d'un module qui m'a bien aider à réduire des boulettes concernant la contribution sur les sites en ligne.
Avec Environment indicator, réduis toi aussi les erreurs de saisies, publications, ou pire ... de suppressions de pages alors que tu es sur le mauvais environnement.
En plus de 10 ans il y en a eu des boulettes. Que ce soit au niveau du code non terminé passé en production, tests non complets ou arrêtés en court de route et que j'ai oublié de reprendre ou même plusieurs oublis de suppression de certains "toto", "dump()" ou encore "console.log('ici')...
Une erreur par jour mais jamais la même !
Pour ces erreurs ils y a toujours des moyens via l'IDE ou même certains scripts GIT de mettre des avertissements avant commit ou déploiement.
En revanche quand on à vraiment la tête en l'air, que ce soit le développeur ou le client final il m'est souvent arrivé de contribuer sur le mauvais environnement. Quand on ajoute une page toute belle toute propre sur l'environnement de test c'est un peu de temps perdu mais ce n'est pas si grave que ça. Par contre lorsque l'on supprime, dé-publie ou modifie une page pour faire un test et se rendre compte que l'on est sur l'environnement de production .... c'est vraiment énervant.
Un simple check de l'url suffit mais en travaillant des semaines ou des mois sur un site web, avec 3 ou 4 environnements l'attention baisse et l'erreur devient inévitable surtout quand les sites sont identiques.
C'est pour cela que depuis plusieurs projets, j'installe automatiquement le module Environment Indicator et prends les 5 minutes nécessaires pour le configurer.
Ce module permet d'appliquer une couleur au menu d'administration. Il y a également un nouveau bouton qui affiche l'environnement sur lequel on se trouve. Il permet d'ouvrir un sous menu afin de pouvoir rapidement se rendre sur la même page des autres environnements configurés.
En choisissant minutieusement les couleurs et en ayant les mêmes sur chaque projet, on se rends plus vite compte de l’environnement sur lequel on se trouve.
Par exemple un rouge bien vif pour que l’œil soit attiré lorsque l'on se trouve sur la production, un jaune pour l'environnement de test où il faut quand même faire attention de ne rien casser et un vert pour l'environnement local qui signifie que l'on peut tout casser c'est pas grave ça n'impacte personne d'autre.
Installation et configuration du module
Comme tout module Drupal l'installation est ultra simple. Un ajout via composer puis une activation avec Drush ou depuis le back office.
composer require drupal/environment_indicator
./vendor/bin/drush en environment_indicator environment_indicator_ui
Une fois les modules installés, on peut se rendre directement à l'url admin/config/development/environment-indicator/switcher afin de définir chaque environnement en fonction de son nom, url, couleur d'arrière plan et couleur du texte.
Ensuite, dans le fichier settings.local.php ou équivalant (qui est différent pour chaque environnement) doit comporter les lignes suivantes qui définissent les couleurs et le titre utilisé sur l'environnement en question.
Voici les valeurs d'exemples pour mes sites en local :
$config['environment_indicator.indicator']['bg_color'] = '#078019';
$config['environment_indicator.indicator']['fg_color'] = '#FFFFFF';
$config['environment_indicator.indicator']['name'] = 'Local';
De mon côté je préfère avoir une cohérence de couleurs malgré le fait que je travaille quotidiennement sur trois ou quatre projets. Le fait de toujours avoir la même couleur pour le dev, preprod et production peut importe le site me met en alerte dès que je saisie du contenu ou modifie une configuration si le bandeau est rouge.
Attention : Ce module fonctionne très bien avec le menu d'administration natif de Drupal et celui d'admin toolbar. Il y a peut être des patches en courts mais aux dernières nouvelles ça fonctionne beaucoup moins bien avec le menu de Gin Toolbar où les couleurs n'apparaissent pas. Ce qui réduit fortement l'utilité de cette fonctionnalité.
Conclusion
Depuis l'ajout de ce module sur tous mes projets, le nombre d'erreur de saisie à fortement diminué et est proche de zéro.
Ajouter un commentaire