Upload
linagora
View
291
Download
2
Embed Size (px)
Citation preview
Industrialisez le développement et la maintenance de vos sites
9 octobre 2014
2
Programme9h00 - 9h15 Accueil
9h15 - 9h45 Introduction
9h45 - 10h30 La mise en place de site facilitée avec Drupal 8Support des terminaux mobiles, édition en ligne du contenu, le theming sans code PHP, multilingue simplifié
10h30 - 10h45 Pause
10h45 - 11h30 Bonnes pratiques pour faciliter la maintenance et les montées de version avec Drupal 8Gestion de la migration des données, gestion de la migration de la configuration, module features, bonnes pratiques pour faciliter les migrations
11h30 - 11h45 User casesIntervention d'un contributeur Drupal 8 et intégrateur Drupal pour différents clients
11h45 - 12h00 Questions / réponses
3
Introduction
4
LEADER HISTORIQUE DU MARCHE LEADER HISTORIQUE DU MARCHE OPEN SOURCE !OPEN SOURCE !
14 ans d'expérience
Plus de 500 clients publics et privés
150 experts
Bureaux en France, Belgique, États Unis et Canada
4 métierscomplémentaires
Édition logicielle
Assurancelogicielle
ProfessionalServices
Hosting
OpenSource
5
Une équipe de vétérans du logiciel libre et du web
6
Dans le web depuis 15 ans
Des projets que nous sélectionnons
Une trentaine d'expertssur des technologies élues et challengées
Des prestations "Haute couture"centrées sur le Business
7
Transparence, pas de "offshore"
Logiciel Libre : clients indépendants, liberté de choix, maîtrise du système d'information
Fédération large de l'écosystème open source français par LINAGORA
8
Une méthodologie en 5 étapes
9
Pilotage et Qualité : La clé du succès !
PAQ
("règles du jeu" : descriptif de l'ensemble des livrables, des responsabilités de chacun, des acteurs, des process de validation....etc.)
Suivi
(Comités projet, pilotage)
Documentation
(Versionning, traçabilité)
Outils
(Extranet documentaire, matrice risques, suivi)
10
Notre Offre Technologique
Des socles pérennes, réversibles, populaires, très efficaces
11
Nous élaborons des sites Internet"Grand public", CMS, jeux concours, e-commerce,
e-CRM, Collectivités, médias en ligne....
12
Refonte des Espaces numériques de la Région Île de France
13
Sites Internet du Service d'Information du Gouvernement
14
Programme E-CRM de Nestlé
15
Site Internet de la ville de Toulon
16
Site Internet de l'Humanité
17
Mais aussi, sur l'année qui vient de s'écouler...Le site Internet de l’École de Guerre
Le site Internet de la Direction de l'Enseignement Militaire Supérieur
Le site Internet événementiel de l'opération Monopoly (Mc Donald's)
Le site Internet de la DRHAT (évolutions)
La réalisation d'un site e-commerce pour le Conseil Général de Haute Savoie
La participation à la mise en place d'une plateforme e-commerce Monde pour un grand Joaillier
Des "mini-sites" pour la Région Île de France
Des interventions pour différents acteurs dans le domaine des médias
...
18
Nous concevons et réalisons des plateformes Intra/Extranet
Applications métiers, intranet de gestion de projet, gestion documentaire, workflows, ...
19
Extranet métier du Défenseur des Droits(gestion du traitement des saisines)
20
Mais aussi, sur l'année qui vient de s'écouler...Un intranet pour le Service des Essences des Armées
Un intranet pour le Conseil Supérieur de la Fonction Militaire
21
Nous mettons également en œuvre des solutions de Réseau Sociaux d'Entreprise
basées sur Drupal. Ces outils favorisent la collaboration et le travail en équipe dans les entreprises et administrations.
22
Réseau Sociaux d'Entreprise
23
Faciliter la mise en place de siteavec Drupal 8
25
Licence Open source GPL V2
Aucun coût de licence
Solution mature
Plus de 10 ans d’existence
Adoption complète
Communauté très importante, plus de 2000 événements (camp, meetup) autour de la solution en 2013 ; de nombreuses références dans le privé comme dans le public (Nestlé, Région Île de France, Radio France, Le Figaro....2 % des sites en ligne dans le monde)
Support et développements
Plus de 300 SA/SARL référencées comme spécialistes de la solution en France Plus de 8000 fonctionnalités (modules) contribuées par la communauté, une méthode qualité imposée pour les contributions
Solution complète et évolutive,
Gestion des utilisateurs, SSO, CMS, Performances....API très complète architecturée au moyen de concepts de « modules », interface utilisateur très efficace/ergonomique, multi langues, responsive.....
Faciliter la mise en place de site avec Drupal 8Caractéristiques du socle Drupal
26Source : https://www.drupal.org/node/2135189 - Proposal to manage the Drupal 8 release cycle Posted by Dries on November 13, 2013 at 6:02pm
Faciliter la mise en place de site avec Drupal 8Les versions de Drupal, le support communautaire
28
Faciliter la mise en place de site avec Drupal 8Les « core initiatives » Drupal 8
La liste complète des évolutions : https://www.drupal.org/list-changesAvancement au 2 Septembre 2014.
29
Faciliter la mise en place de site avec Drupal 8Mobilité
Drupal 8 est un CMS « mobile friendly » qui intègre dans son core :● Une interface Web Service pour une intégration dans des applications natives
● Des éléments HTML5 indispensables pour la mise en place de Web Apps
● La possibilité d'utiliser le back-end de gestion de contenu (formulaires) depuis des terminaux mobiles
● Des thèmes full responsives
● Une optimisation au niveau des performances « front-end » (ex : image handling)
31
Faciliter la mise en place de site avec Drupal 8Édition du contenu
Drupal 8 apporte de nombreuses améliorations sur les sujets concernant la gestion de contenu
● Contribution :● Éditeur WysiWyg intégré, médiathèque● Édition en « ligne » pour les contenus, blocs et views● Formulaires de contribution plus ergonomiques et flexibles pour les webmasters● ...
● Fonctionnalités● De véritables « views » pour les listes du back office, ce qui permet la
création/modification simple d'écrans d'administration● La gestion de la configuration en dehors de la base de données permet la mise en place
simple de plateformes de « staging », préproduction...● Une gestion des blocs et des thèmes plus efficace● ...
32
Faciliter la mise en place de site avec Drupal 8Édition du contenu
33
Faciliter la mise en place de site avec Drupal 8Édition du contenu
34
Faciliter la mise en place de site avec Drupal 8Multilingue intégré
● L'installer est multilingue
● L'anglais peut être supprimé
● Des blocks de contenus visibles en fonction de la langue
● Langues par défaut pour les utilisateurs(+ langue admin)
● Centralisation des fichiers « .po » (contrôle des versions)
● ….
35
Faciliter la mise en place de site avec Drupal 8Le theming sans code PHP
Twig est un moteur de template PHP créé par Fabien Potentier, créateur de Symfony
● Extensible
● Sécurisé: Pas de PHP !
● Orienté objet
● Syntax facile et intuitive
● Supporté par les IDE : Eclipse, Netbeans, Emacs, Vim, PhpStorm, Sublime Text, Textmate...
● Populaire: Zend, CodeIgniter, CakePHP, Drupal 8...
● Très bien documenté twig.sensiolabs.org/doc/documentation
36
Faciliter la mise en place de site avec Drupal 8Le theming sans code PHP
Drupal 7 PhpTemplate Drupal 8 Twig
$classes - $node->nid - $page['content'] {{ classes } - {{ node.nid }} - {{ page.content }}
print($variables);ouprint render($variables);
{{ variables }}
Fonctions de theme Ou Templates *.tpl.php
*.html.twig
Dans *.tpl.php<?php db_query('DROP TABLE {node}'); ?>
Nope
Filtrage de l'affichage des variables {{ variable|raw }}{{ "Read more" | t }}
Exemples
37
Faciliter la mise en place de site avec Drupal 8Le theming sans code PHP
Drupal 7 block.tpl.php
Exemples
Drupal 8 block.html.twig
38
Bonnes pratiquesFaciliter la maintenance et les montées de
version avec Drupal 8
39
Bonnes pratiques - maintenance et montées de versionGestion de la migration des contenus
● Migration de contenu et non mise à jour de la base de données (update.php)
● API d'import dans le noyau Drupal 8 basée sur le module Migrate.
● Migrations de Drupal 6 à Drupal 8 et Drupal 7 à Drupal 8 gérées par le noyau Drupal 8, basées sur le module migrate_d2d
● Travaux et code encore en développement...
40
Bonnes pratiques - maintenance et montées de versionGestion de la migration des contenus
● Framework de migration de contenu depuis des sources externes :
csv, xml,json, bdd, webservice...
● Extensible pour d'autres entités personnalisées
● Interface d'administration
● Intégration drush
● Migrations définies pour les entités Drupal :
nodes, users, terms, comments
41
Bonnes pratiques - maintenance et montées de versionGestion de la migration de la configuration
● Migrations définies pour site name, slogan, roles, vocabularies, node types, alias d'url, variables...pour D6
● « Step by step guide how to migrate D6 to D8 » pour drush
https://www.drupal.org/node/2350521
● Migration en utilisant une UI :
https://www.drupal.org/project/migrate_upgrade
● Travaux en cours pour D7->D8
42
Bonnes pratiques - maintenance et montées de versionAvenir du module features
● Nouveau dans Drupal 8 : Configuration Management Initiative● API pour stocker la configuration du site afin de faciliter son déploiement.
● Importer des fichiers de configuration .yml
● Exporter des fichiers de configuration .yml
● Import/export par l'interface ou par drush
config-export (cex) et config-import (cim)
● Active storage : espace où stocker la configuration courante
Base de données par défaut
● Staging storage : espace où réside la configuration à importer dans Drupal 8
● Diff entre l'active et le staging visible dans l'interface d'administration
43
Bonnes pratiques - maintenance et montées de versionAvenir du module features
Après l'export de la configuration de la base de données au système de fichiers
Crédit image : https://www.drupal.org
44
Bonnes pratiques - maintenance et montées de versionAvenir du module features
Crédit image : https://www.drupal.org
45
Bonnes pratiques - maintenance et montées de versionAvenir du module features
Crédit image : https://www.drupal.org
46
Bonnes pratiques - maintenance et montées de versionAvenir du module features
Crédit image : https://www.drupal.org
47
Bonnes pratiques - maintenance et montées de versionBonnes pratiques pour faciliter les migrations
● Le nouveau site se synchronise avec l'actuel site en production grâce à Migrate.
● Les montées en versions majeures (7.x à 8.x) utiliseront Migrate
● Les montées en versions mineures (8.x-1.x à 8.x-2.x) peuvent utiliser update.php (hook_update_N)
● Les développements de modules custom doivent utiliser l'API et les standards Drupal
● Tests et rollbacks
48
User casesRetours d'expérience d'un contributeur Drupal 8
49
Témoignage contributeur Drupal 8Activités et anecdotes
● La revue de code
https://www.drupal.org/project/issues/projectapplications?status=8
● Co-maintenance des modules Drupal 7
● Maintenance de modules Drupal 8
● Traductions
● Issue queue Drupal 8
● Co-organisation d’événements locaux Drupal
50
Questions / Réponses
Merci de votre attentionMerci de votre attention
LINAGORA – Siège social80, rue Roque de Fillol92800 PUTEAUXFRANCE
Tél. : +33 (0)1 46 96 63 63Fax : +33 (0)1 46 96 63 64Info : [email protected] : www.linagora.com