Weekend Opengento 2019 - Lavaur

Après 2 ans de pandémie, Opengento nous a proposé un nouveau weekend hackathon qui fut l’occasion de retrouver les copains et aussi voir de nouvelles têtes 😀.

Les retrouvailles se sont déroulées au pays de la chocolatine, en compagnie d’une trentaine de développeurs venus du monde entier ! Hauts-de-France, Grand-Est, Paris, Occitanie et même de Pologne et du Vietnam 🤯.

C’est à partir du vendredi après-midi que les premières personnes sont arrivées et ont pu découvrir les lieux, dans un gîte magnifique en plein coeur de Lavaur. Le soir nous nous sommes réunis pour réfléchir aux propositions de sujets, les voter et constituer des différentes équipes. Il y a aussi eu de la bière tout au long de la soirée, du ping pong et les premiers d’entre-nous à tester le spa 😛.

Au réveil, un petit déjeuner de roi nous attendait pour nous permettre d’être en forme pour attaquer la journée du samedi. Nous avons pu continuer chacuns sur nos sujets respectifs, avec aussi beaucoup de discussions et d’entraide 😊. La journée fut accompagnée au midi de grillades, l’après-midi de différents talks et le soir du match de rugby (Bravo la France ! 🇫🇷). C’est à l’aube que les plus courageux se sont couchés, les sujets terminés (plus ou moins 🤪).

Le dimanche en fin de matinée après un réveil un peu plus compliqué, chaque équipe le souhaitant a pu nous présenter le résultat de son hackathon. L’heure de fin est arrivée et nous nous sommes séparés, après un weekend riche en émotions.

Le programme

CTRL + K Gento

Vous connaissez peut-être le raccourci CTRL + K (Ou CMD + K) sur Github qui permet de rechercher un peu tout ce que vous voulez via la Command Palette. Ici le but était de venir l’ajouter à Magento. Au début ils ont essayé sur Magento 2, mais ils ont eu des problèmes avec RequireJS. Au final ils ont décidé de l’ajouter sur un Magento 1 (OpenMage). C’était l’occasion de découvrir un service très pratique qui se nomme CommandBar qui permet la gestion de l’affichage de la palette et de se concentrer sur la gestion de son contenu.

Terraform + Ansible

Terraform est un outil d’“infrastructure as code” qui permet de manipuler des infrastructures cloud via des fichiers de configuration et un client. Ici c’est avec Scaleway Elements que ce logiciel a été utilisé pour créer une infrastructure complète qui pourra être utilisée par la suite pour un site e-commerce sous Sylius comprenant un bastion, deux frontaux, une base de données, un load balancer, un cluster elasticsearch… Une fois l’architecture mise en place, c’est avec un script PHP qu’un inventory Ansible a été généré à partir du JSON fourni par Terraform contenant les IPs et les tags des machines. Cela permet ensuite de pouvoir provisionner chaque serveur avec des rôles Ansible. C’est le sujet sur lequel j’ai travaillé principalement avec Jacques et Théo de chez Adexos.

HTTP 103 Early hints

Le statut HTTP 103 permet de conseiller aux navigateurs des ressources à télécharger pendant le chargement de la page principale (styles, assets, images… ). En renvoyant de code HTTP le navigateur chargera donc les ressources proposées en attendant la récupération complète du body de la page principale. Très pratique pour les performances de votre site Internet le code HTTP 103 permet ainsi de diminuer la latence avec les utilisateurs. Via une liste d’assets configurée dans Magento 2 un événement est écouté pour modifier le header de la page et précisier les fameuses ressources à télécharger.

Connecter Magento 2 et Akeneo avec Gyroscops

Grâce à Gyroscops, l’ETL développé par Kiboko, il a été possible d’importer des produits depuis le PIM Akeneo vers Magento 2. Pour l’import de chacun des produits, ce sont des workers RabbitMQ qui ont été utilisés. Une fois l’import lancé, nous avons pu voir le nombre de workers augmenter puis diminuer au fil des imports.

Snowflakes

Des flocons de neige sur votre site en 2022 ? Vous pensiez que c’était has been ? Pas pour certains et ils ne font pas tomber que des flocons. Avec le module Snowflakes, il est possible de faire tomber n’importe quel émoji ou texte de votre choix, configurer la vitesse de chute et même décider de ne faire tomber les objets uniquement que s’il neige chez votre utilisateur ! Un must have pour booster votre CA ! (Non on déconne ça sert à rien 🤣)

Démo de hack Magento 2

Magento 2 possède dans son tunnel un système qui va proposer à l’utilisateur de se connecter dans le tunnel si son mail correspond à un compte client. On nous a montré qu’avec Burpsuite, en utilisant cette vérification d’email native à Magento 2, il est possible de tester une liste d’email et d’en deviner les comptes clients existants. Avec un peu de temps on peut ainsi récupérer la liste de votre fichier clients pour les mailer ou encore passer à l’étape suivante et lancer des brutes force sur les mots de passe de ces comptes.

Les talks

Le samedi plusieurs talks ont été donnés sur les sujets suivants :

  • Low code synchronization, Grégory revient sur le sujet de l’ETL de Kiboko, sujet présenté au Forum PHP 2021 et représenté ce weekend en anglais.
  • PHP Storm et xdebug mastering, pour coder et debugger dans de bonnes conditions, n’est-ce pas Frédéric ? 😉
  • Git mastering, présenté par Jacques, pour connaître des astuces très méconnues de git et très utiles au quotidien.
  • PSALM, PHPMD, PHPCS, tous ces outils ont été brillamment présentés par Frédéric pour améliorer la qualité de notre code PHP.
  • Démo de Warden, par Łukasz, un outil qui permet d’avoir plusieurs de vos projets en route sur votre machine avec Docker sans conflits de ports en utilisant des outils comme Traefik et Dnsmasq.

Les slides du talk “Git mastering” renommé en “Git is crazy”

Le mot de la fin

Et voilà, c’est le coeur léger et rempli de souvenirs que nous sommes rentrés à l’issue de ce weekend tout simplement magique. Encore une fois, c’était enrichissant, plein de bons moments, du partage de connaissances, mais aussi de la détente et SURTOUT une bouffée d’oxygène après cette longue période Covid.

Un énorme merci à tous les organisateurs de cet événement, notamment à Frédéric et PH2M. Un grand merci aussi à tous les sponsors de l’événement, dont Monsieur Biz. Merci aussi au gîte Croix de Pastel pour son accueil chaleureux dans ce cadre idyllique. Et bien sûr, un gigantesque merci à Opengento qui organise et nous permet de participer à ces hackathons ! Pour finir merci aussi à tous les participants !

MERCI 🙏🏻

Notre weekend en images

Les sujets initiaux

Une team concentrée dans le canapé

Du code et du rugby

Un petit déjeuner aux chocolatines

Présentation du hack Magento 2

Photo de groupe via le drône de Łukasz

Photo de groupe avec vie du gîte via le drône de Łukasz

Photo de groupe en hauteur via le drône de Łukasz

Thank you Łukasz for the nice photos with your drone 😉.

Mets le zoom à 200%