Installer et configurer MYSQL sous docker pour en finir avec Vagrant (sur MacOS)

Pré-requis :

  • Docker : https://hub.docker.com
  • Kitematic (GUI pour Docker) : https://github.com/docker/kitematic/releases

Une fois installé, lancez l’application Docker et connectez vous avec votre compte.

Ensuite, via Kitematic, téléchargez l’image « officielle » mysql qui vous intéresse (en général la ‘:latest’)

Kitematic va lui même créer un container Docker en se basant sur l’image précédemment téléchargée.

Startez le container via Kitematic et allez dans ‘Settings’. Ajouter une ligne aux Environment Variables ‘MYSQL_ROOT_PASSWORD’, et enregistrez.

Vos variables devraient ressembler à ça :

Si vous le désirez, vous pouvez changer et configurer les ports de sorties dans ‘Hostname/Ports’.

Redémarrer le container, et vous avez un service mysql qui tourne 🙂

Tips: Si vous n’arrivez pas à connecter vos projets (Ruby On Rails pour notre cas) avec ce nouvel environnement à cause de cette erreur :

« Authentication plugin ‘caching_sha2_password’ cannot be loaded »

C’est qu’il y a un problème d’encryptage du mot de passe ‘root’ (certainement dû à une divergence de mysql-server/client).

Pour se faire, deux solutions :

  • Via Kitematic, cliquez sur ‘Exec’
  • Via un terminal, lancez les commandes suivantes

Puis, dans la console ouverte, mettez à jour le mot de passe ‘root’ via :

v-validate et champs input

En utilisant vee-validate pour vérifier la présence de champs obligatoire d’un formulaire je me suis aperçu d’un problème, en testant le formulaire je ne pouvais écrire dans un de mes champs input sur mobile.

La fonctionnalité marchant très bien sur desktop, et pire encore elle marche parfaitement sur les autre champs du formulaire.

 

après plusieurs essais et plusieurs recherches google, il s’avère que le  problème viens de l’attribut v-validate. et je suis tombé sur un article intéressant qui nous raconte que le problème est connu, et que sur certain mobile, particulièrement sous chrome, le v-model n’est pas mis à jour en temps réel, et donc le v-validate n’arrive pas à gérer.

pour contourner le soucis on peut ajouter :

cela permet d’attendre que le model sois setter.

Dans mon cas cela a corrigé le problème sous chrome sur mobile.

 

Source : https://stackoverflow.com/questions/53538068/vuejs-form-validation-with-veevalidate-cant-type-on-some-mobile-devices

 

Overcommit, l’alternative facile aux git hooks

Plusieurs fois j’ai eu recours aux git hooks mais je ne trouve pas ça forcément pratique ou simple à écrire.

Premier exemple d’utilisation, ayant intégré rubocop dans le CI/CD, j’aimerais ne pas rater de livraison parce que j’ai oublié de lancer rubocop (ou rspec par exemple), avant de pousser le code.

Deuxième exemple, il m’arrive de bidouiller le code en local pour des tests par exemple (changer une adresse mail de destination, mettre des console log, des alert, etc).

Et évidemment, ce genre de chose ne doit pas se retrouver en prod. Ayant une mémoire de bébé poisson rouge, une fois sur deux, je push du code qui ne devrait pas aller en prod…

Continuer la lecture de « Overcommit, l’alternative facile aux git hooks »

Avoir l’inspecteur web d’un smartphone sur son PC / Mac

  • Brancher le smartphone au pc avec un câble usb
  • Activer l’inspecteur web sur le device
    • Sur iOs :
      • Aller dans Réglages
      • Puis dans Safari
      • Puis dans Avancé
      • Et activer l’inspecteur web
    • Sur Android :
      • Aller dans Paramètres
      • Puis dans À propos du téléphone (tout en bas)
      • Cliquer plusieurs fois sur Numéro de build jusqu’à « être développeur »
      • Retour dans Paramètres
      • Dans Options développeurs
      • Activer le Débogage usb
  • Accéder à l’inspecteur
    • Pour iOs :
      • Ouvrir Safari
      • Dans l’onglet développement
      • Choisir le device et l’onglet concerné
    • Pour Android :
      • Ouvrir Chrome
      • Ouvrir l’inspecteur Web (Chrome DevTools)
      • Dans les options du Chrome DevTools
      • Cliquer sur More Tools
      • Remote devices
      • Choisir son device et accepter la demande d’autorisation sur le device
      • Cliquer sur le Inspect de l’onglet désiré