Retours sur la DrupalCon Vienna 2017

Créé le 22/10/2017

Dernière mise à jour le 25/10/2017

Étiquettes

J'ai pu assister à la Drupalcon Vienna 2017. Voici mes retours par rapport aux sessions et Bof auxquelles j'ai pu assister ou co-présentées.

Cette année, la Drupalcon a accueillie 1670 participants.

Une note sur les salles de bofs, elles étaient très bien pour les discussions (des chaises en cercles), mais pas de table, ni de vidéoprojecteur, donc pour les présentations c'étaient un peu compliquées.

Sessions et Bofs auxquelles j'ai assisté

Advanced Configuration Management with Config Split et al.

La session sur la gestion de la configuration, présentée par le créateur de Config split, Fabian Bircher, également très impliqué que ce soit au niveau du noyau ou des modules communautaires dans tout ce qui touche à la configuration.

Le point sur la fonctionnalité « Graylist » de Config split nécessiterait un cas d'usage plus concret pour l'explication. J'ai pu discuter de cela avec lui après une BOF. L'idée est plutôt pour des modifications en prod autorisées pour le client, en mettant ces éléments (avec des wildcard s'il faut) en Graylist, il est possible :

  • de fournir ces éléments dans le dossier principal de la configuration,

  • de les importer lors d'un déploiement,

  • de les modifier en production,

  • de les exporter dans le split de prod avant import de nouvelles configuration,

  • ainsi lors de l'import de la configuration (avec tous les split actifs), les modifications de production ne seraient pas écrasées.

Using JSON web tokens & Varnish to cache content for logged-in users

L'idée de la présentation est d'envoyer des informations de session au client afin que Varnish puisse mettre en cache des pages pour des utilisateurs authentifiés, en faisant des variations de cache selon les données utilisateurs envoyées dans des JSON web tokens.

PHP 7+: The whys and hows

Le conférencier n'a pas pu afficher sa présentation. Il faudra voir l'enregistrement de la session.

Prophecise your phpunit tests

Présentation assez moyenne, le sujet est intéressant, mais la manière apportait assez peu de valeur ajoutée par rapport à un parcours de la documentation.

Distributions and Install Profiles: The Challenge and the Glory

Présentation générale sur le concept des distributions et des profils d'installation.

D'ailleurs au passage ça a permis d'éclaircir la légère différence entre les deux.

Un profil d'installation c'est ce que l'on sélectionne lorsque l'on installe Drupal, ce sont des étapes de paramétrages, des modules et thèmes qui vont être activés et de la configuration importées.

Une distribution, c'est un ou plusieurs profils d'installation packagés, en plus des profils, il peut y avoir des modules et des thèmes non activés systématiquement, il peut y avoir des scripts pour la compilation des assets, du packaging, etc.

La présentation faisait le point sur le fait Drupal.org n'est plus adapté pour packager des distributions :

  • inclusion de plus en plus répandue de librairies externes pour le front,

  • gestion des modules et librairies via Composer,

  • bientôt Drush va retirer les fonctionnalités de Drush make,

  • impossible de lancer des tests automatisés sur les distributions.

La présentation listait également les distributions émergentes en Drupal 8. Dans cette liste il y en a 2 que je n'avais pas repéré en Drupal 8 et qu'il faudra que je teste pour voir leurs fonctionnalités :

  • Varbase

  • Openchurch

Sharing configuration in a multisite environment in Drupal 8

Discussion autour des problèmes de gestion de la configuration. Le sujet a été initié par des personnes de l'université de Lund (Suède) qui utilisent Jenkins et Aegir afin de fournir des sites au personnel de l'université.

Ils utilisent Jenkins pour packager Drupal 8 de manière ensuite être utilisé par Aegir car Aegir ne gère pas encore pour l'instant des installation via Composer.

Au niveau de la gestion de la configuration dans Drupal 8, ils utilisent des features et des hook_update pour l'import des mises à jour de features.

Ils ont également testé les modules Configuration Synchroniser et Install Profile Generator pour partir sur une utilisation de CMI. Mais le principal problème rencontré est qu'il est impossible de changer par exemple le nom du site ou l'adresse mail du site lors d'une installation à partir d'une config existante.

Il y a eu la présence de Fabian Bircher et Alex Pott qui ont pu éclaircir les interrogations sur le fonctionnement de CMI pourquoi cette imposition de conserver les UUIDs d'un environnement à l'autre.

Le noyau fait le moins possible d'assomptions sur le workflow que les gens ont pour gérer leur configuration.

L'idée avec les UUIDs est de permettre d'identifier une configuration. Si c'est la même configuration, une vue par exemple, quelque soit l'environnement, il est donc normal qu'elle est le même UUID. Donc si on installe un site à partir d'une conf existante il est normal d'avoir les mêmes UUIDs.

Life on the Edge: CDN and HTTPS Delivery in 2017

Présentation plutôt sur le pourquoi il faut être en HTTPS et utiliser un CDN, plus que sur le comment.

Pas mal de métriques étaient montrées pour sensibiliser à l'intérêt de mettre en place de telles infrastructure lors de la mise en place de l'hébergement d'un site.

Un autre point sur l'utilisation du protocole HTTP2, il est uniquement utilisé si le site est en HTTPS, cela vient d'une limitation mise en place dans les navigateurs.

Rendering & caching: a journey through the layers

Présentation du système de cache de Drupal 8, présentation très claire de la différence entre les modules Dynamic page cache, page cache et Big pipe et où ils se situent les uns par rapport aux autres.

Explication simple d'un système très compliqué.

Bof que j'ai co-présenté

Avec Vincent Maucorps, nous avons co-présenté 2 bofs inscrites sur le tableau des bofs le jour même.

Présentation d'Entity share

Nous avons présenté le module Entity share, en expliquant le besoin auquel répond le module, la manière dont celui-ci fonctionne et en faisant une démo.

L'objectif principal du module est de partager des entités de contenu entre sites Drupal 8. Pour par exemple permettre de synchroniser du contenu dans plusieurs langues parmi plusieurs sites filiales d'une organisation, avec ou sans site jouant le rôle de dépôt commun du contenu.

Avec les retours des participants et ayant déjà eu ce retour à Drupagora 2017, un autre cas d'usage qui émerge est de permettre la récupération du contenu depuis des environnements de production vers les environnements de préproduction, recette, etc.

Durant cette bof, j'ai également pu rencontré Gabe Sullice, co-mainteneur du module JSON API sur lequel s'appuie Entity share. Il était content de voir l'utilisation de la JSON API pour le partage de contenu, chose qu'il aurait souhaité également faire.

Il y a eu également présence de Ted Bowman, qui a suggéré l'utilisation du module Subrequests pour améliorer les performances. Il faudra que je regarde ce module.

Présentation d'une distribution pour site vitrine

Nous avons enchaîné sur le créneau horaire suivant avec une présentation d'une distribution Drupal 8 pour site vitrine.

Cette distribution sera reversée sur Drupal.org une fois prête.

En discutant avec les participants, après la présentation de la distribution, nous avons représenté Entity share.

Sprints

Même si des sprints étaient en continu sur la durée de la DrupalCon, le vendredi était un jour dédié.

Aussi j'ai pu profiter de la présence de Greg Anderson, co-mainteneur de Drush et collaborateur sur le groupe Github Drupal Composer, pour avancer sur des propositions d'améliorations faîtes pour ses outils :

Rien n'a été commité, mais au moins cela aura permis d'avancer sur la revue des merge requests. Les contributions avancent plus vite lorsque les personnes peuvent échanger directement.

Une parenthèse sur les certifications

J'ai pu passer 3 certifications Drupal 8 durant cette DrupalCon, je profite de cet article pour comparer le passage des certifications sur place et à distance.

Je conseille, si vous en avez la possibilité de passer vos certifications dans un centre, cela est bien moins contraignant qu'à distance.

En passant l'examen à distance, vous devez :

  • être filmé par une webcam

  • avoir un micro pour le son

  • installer un logiciel sur votre machine (Windows obligatoire)

  • lors du lancement de l'examen, il y a 2 étapes d'authentification :

    • une reconnaissance faciale

    • une reconnaissance textuelle, où il faut saisir prénom et nom à la même vitesse que celle où le calibrage a été effectué initialement.

Conclusion

Photo DrupalCon 2017 session de clôture
Légende

Session de clôture de la DrupalCon 2017.

Merci aux organisateurs pour cet événement.

Merci à la communauté pour sa présence et à la reprise de l'organisation pour faire en sorte que d'autres DrupalCon Europe puissent avoir lieu.

Cela fût très sympathique de revoir les personnes que l'on connaît et de faire connaissance avec de nouvelles.

Et merci à Smile (sponsor argent) de m'y avoir envoyé.

Ajouter un commentaire