SlideShare une entreprise Scribd logo
1  sur  36
Télécharger pour lire hors ligne
Réussir
      sa mise à jour
        de TYPO3
             26.06.2012




Thomas LEROY <thomas@site-ngo.fr>
Objectif
Objectif



          TYPO3                          TYPO3
                          MISE À JOUR
          ANCIEN                        RÉCENT




T3UNI12
                                        26.06.2012
Réussir sa mise à jour de TYPO3
Analyse de l'existant
              -
Définir notre environnement
          de travail
Analyse de l'existant
      Environnement technique
                                                                         PHP
                                                                         • Version
                                                                         • Variables php.ini
                                                                         • Extensions chargées
                  Type / Version de l'OS



                                                       Base de données
                                                       •   Version
                                                       •   Encodage
                       Serveur d'application
                       •   Type (apache / IIS / ...)
                       •   Version
                       •   Modules chargés                               Liste des CRON




T3UNI12
                                                                          26.06.2012
Réussir sa mise à jour de TYPO3
Analyse de l'existant
      Environnement TYPO3



          •   Version de TYPO3
          •   Encodage
          •   Liste des extensions
               •   Extensions du TER
               •   Développements spécifiques
          •   XCLASS
          •   Hooks



T3UNI12
                                                26.06.2012
Réussir sa mise à jour de TYPO3
Environnement de travail
      https://github.com/Apen/TYPO3-backup/blob/master/saveTypo3Website.sh


          •   Effectuer une sauvegarde de l'instance TYPO3 de production
          •   Travailler dans le même environnement applicatif (sauf montée de version)
          •   Travailler dans un environnement de TEST
          •   Versionner vos scripts et éventuellement les développements spécifiques




T3UNI12
                                                                             26.06.2012
Réussir sa mise à jour de TYPO3
Mise à jour de TYPO3
Rappel - Architecture des fichiers
      http://typo3.org/documentation/document-library/guides/doc_guide_install/2.0.2/view/


      fileadmin : fichiers utiles pour la contribution

      typo3conf : configuration du site

      uploads : fichiers attachés à des enregistrements
      de la BD

      typo3temp : fichiers temporaires générés par
      TYPO3

      sources : t3lib / typo3 / index.php




T3UNI12
                                                                                26.06.2012
Réussir sa mise à jour de TYPO3
Les étapes de la mise à jour

      1.   Sauvegarder !
      2.   Installer les nouvelles sources
      3.   "Upgrade wizard"
      4.   "Compare database"
      5.   Vider les caches :
             a) truncate cache_*
             b) Vider typo3temp
             c) Supprimer temp_CACHED_*
      6.   Reinitialiser les paramètres utilsateurs




T3UNI12
                                                      26.06.2012
Réussir sa mise à jour de TYPO3
Upgrade Wizard
Compare Database
Différences entre les versions
          de TYPO3
Différences entre les versions de TYPO3
          De nombreuses nouvelles versions : 4.5 LTS, 4.6, 4.7... 6.0 ?!?

            •   Le cycle de développement d’une nouvelle version est passé à 6 mois
            •   Pour l'instant la version conseillée pour un support optimal est la 4.5


          Pour toutes versions inférieures à la 4.1, il faut :
          1. mettre à jour en 4.1
          2. mettre à jour en 4.5
          3. mettre à jour en 4.7


          Pour toutes versions supérieures à la 4.1, il faut :
          1. mettre à jour en 4.5
          2. mettre à jour en 4.7




T3UNI12
                                                                                          26.06.2012
Réussir sa mise à jour de TYPO3
Versions de TYPO3
Passage à la 4.2
      http://wiki.typo3.org/Upgrade#Upgrading_from_4.1_to_4.2

                     Compatible PHP 5.1.x/5.2.x
                     UTF-8 non obligatoire

                     Certains champs sont passés de BLOB à TEXT (notamment le champ
                     "config" des gabarits typoscript).

      Il est donc indispensable de passer par une conversion, exemple:
                      ALTER TABLE `sys_template` CHANGE `config` `zzz_deleted_config` BLOB NOT NULL;
                      ALTER TABLE `sys_template` ADD `config` TEXT NOT NULL AFTER `zzz_deleted_config`;
                      UPDATE `sys_template` SET `config` = CAST(`zzz_deleted_config` AS CHAR);
                      ALTER TABLE `sys_template` DROP `zzz_deleted_config`;




T3UNI12
                                                                                                       26.06.2012
Réussir sa mise à jour de TYPO3
Passage à la 4.3
      http://wiki.typo3.org/Upgrade#Upgrading_to_4.3

                 PHP 5.2.x obligatoire
                 UTF-8 conseillé




T3UNI12
                                                       26.06.2012
Réussir sa mise à jour de TYPO3
Passage à la 4.4
      http://wiki.typo3.org/Upgrade#Upgrading_to_4.4


                 Même démarche que pour une 4.3
                 PHP 5.2.x obligatoire / 5.3.x supporté
                 UTF-8 conseillé



                 Possible problèmes de skins (t3skin)




T3UNI12
                                                          26.06.2012
Réussir sa mise à jour de TYPO3
Passage à la 4.5
      http://wiki.typo3.org/Upgrade#Upgrading_to_4.5_Long_Term_Support


                 PHP 5.2.x obligatoire / 5.3.x supporté
                 UTF-8 obligatoire
                 Utilisation de Swiftmailer conseillée pour les mails


                 Workspaces
                 Vérification des fonctions dépréciées avec le deprecated.log (en
                 prévision d'une passage vers la 4.5>)




T3UNI12
                                                                         26.06.2012
Réussir sa mise à jour de TYPO3
Passage à la 4.6
      http://wiki.typo3.org/Upgrade#Upgrading_to_4.6


                 PHP 5.3.x obligatoire
                 UTF-8 obligatoire
                 Utilisation de Swiftmailer obligatoire pour les mails


                 Certaines propriétés du RTE dépréciées (upgrade wizard)
                 Fonctions dépréciées supprimées




T3UNI12
                                                                           26.06.2012
Réussir sa mise à jour de TYPO3
Passage à la 4.7
      http://wiki.typo3.org/Upgrade#Upgrading_to_4.7



                  PHP 5.3.x obligatoire
                  UTF-8 obligatoire


                  Suppression de :
                       $TYPO3_CONF_VARS['BE']['forceCharset']
                       $TYPO3_CONF_VARS['SYS']['setDBinit']




T3UNI12
                                                                26.06.2012
Réussir sa mise à jour de TYPO3
Mise à jour de l'encodage
Conversion UTF-8 de la base de données
      http://wiki.typo3.org/UTF-8_support#Convert_an_already_existing_database_to_UTF-8


      mysqldump -u (user) -p(pass) --max_allowed_packet=10000000 typo3 > typo3_utf8.sql

      +
      sed -e 's/latin1_swedish_ci/utf8_general_ci/g' -i "" typo3_utf8.sql

      Si besoin : iconv -f iso-8859-1//TRANSLIT//IGNORE -t utf8 typo3_utf8.sql > dump-iconv.sql

      +
      mysql -u (user) -p(pass) --default-character-set=utf8 typo3 < typo3_utf8.sql


      Convient dans la plupart des cas, mais il y a toujours des cas particuliers...



T3UNI12
                                                                                          26.06.2012
Réussir sa mise à jour de TYPO3
Conversion UTF-8 du backend
      http://wiki.typo3.org/UTF-8_support#TYPO3_settings




      $TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;';
      $TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';




                    Toujours tester l'ajout et le rendu de contenu pour vérifier l'encodage




T3UNI12
                                                                              26.06.2012
Réussir sa mise à jour de TYPO3
Conversion des templates
      Si nécessaire...




      Pour TemplaVoilà comme pour les autres systèmes


      Manuellement avec un éditeur de texte
                 ou
      iconv




T3UNI12
                                                        26.06.2012
Réussir sa mise à jour de TYPO3
Conversion des fichiers
      Si nécessaire...



      Peut concerner certains fichiers locallang ou PHP
      Manuellement avec un éditeur de texte ou iconv




T3UNI12
                                                          26.06.2012
Réussir sa mise à jour de TYPO3
Mise à jour des extensions
             -
    Extensions du TER
Extensions du TER
      Méfiez-vous des évolutions...

      • Vérifier que l'extension soit toujours supportée (et éventuellement changer)
      • Vérifier sur typo3.org les changements apportés à chaque version
      • Vérifier que la version soit compatible avec la version de TYPO3 visée (ex:
          direct_mail et la 4.7)
      • Vérifier que la nouvelle version n'a fonctionnellement pas changé (ex: powermail
          et les templates)


      Bref, tester, tester, et tester !!!



T3UNI12
                                                                           26.06.2012
Réussir sa mise à jour de TYPO3
Mise à jour des extensions
              -
Développements spécifiques
Développement spécifique
      Vérification de la qualité du code - le plus facile...




          • Fonctions dépréciées avec le deprecated.log
          • Compatibilité avec PHP 5.3 >
          • Code HTML "en dur" (labels)




T3UNI12
                                                               26.06.2012
Réussir sa mise à jour de TYPO3
Développement spécifique
      Vérification de la compatibilité du code - Le plus dur...




          • Vérification de l'existence des hooks (à priori toujours existant sauf
              refonte de code)
          •   Vérification des XCLASS (contrôle des classes et méthodes
              surchargées)




T3UNI12
                                                                              26.06.2012
Réussir sa mise à jour de TYPO3
Vérification fonctionnelle
      Est-ce que ça marche encore ?




      Pour chaque plugin/module/...:
          •   On vérifie manuellement les fonctionnalités frontend ou backend
          •   Execution de tests unitaires
          • Éventuellement, exécution de scénarios sous Selenium IDE




T3UNI12
                                                                            26.06.2012
Réussir sa mise à jour de TYPO3
Mise à jour des traductions
Mise à jour des traductions
      http://translation.typo3.org/



          • Vérifier que les traductions n'ont pas évolué
          • Et eventuellement contribuer à la traduction de l'extension :-)




T3UNI12
                                                                              26.06.2012
Réussir sa mise à jour de TYPO3
Questions / Réponses




T3UNI12
                                      26.06.2012
Réussir sa mise à jour de TYPO3
Merci
                Retrouvez cette présentation sur www.site-ngo.fr




              Thomas LEROY <thomas@site-ngo.fr>




T3UNI12
                                                                   26.06.2012
Réussir sa mise à jour de TYPO3

Contenu connexe

Tendances

Audit openERP 7.0: Mise en place &Optimisation de Performances
Audit openERP 7.0: Mise en place &Optimisation de Performances Audit openERP 7.0: Mise en place &Optimisation de Performances
Audit openERP 7.0: Mise en place &Optimisation de Performances Firas Kouẞàa
 
Procédure de configuration et préparation de l’environnement sous windows
Procédure de configuration et préparation de l’environnement sous windowsProcédure de configuration et préparation de l’environnement sous windows
Procédure de configuration et préparation de l’environnement sous windowsAddi Ait-Mlouk
 
Avantages de TYPO3 dans un environnement LAMP
Avantages de TYPO3 dans un environnement LAMPAvantages de TYPO3 dans un environnement LAMP
Avantages de TYPO3 dans un environnement LAMPYannick Pavard
 
Rapport systéme embarqué busybox
Rapport systéme embarqué busyboxRapport systéme embarqué busybox
Rapport systéme embarqué busyboxAyoub Rouzi
 
Open erp le reporting avec jasper reports
Open erp  le reporting avec jasper reportsOpen erp  le reporting avec jasper reports
Open erp le reporting avec jasper reportsSoukaina Boujadi
 
Mis en place d'un herbergement multiple sous centos 6.
Mis en place d'un herbergement multiple sous centos 6.Mis en place d'un herbergement multiple sous centos 6.
Mis en place d'un herbergement multiple sous centos 6.Manassé Achim kpaya
 
Présentation de PHP 5.4 [FR]
Présentation de PHP 5.4 [FR]Présentation de PHP 5.4 [FR]
Présentation de PHP 5.4 [FR]Wixiweb
 
eServices-Tp5: api management
eServices-Tp5: api managementeServices-Tp5: api management
eServices-Tp5: api managementLilia Sfaxi
 
eZ Publish Platform 5.2 - Webinaire d'introduction
eZ Publish Platform 5.2 - Webinaire d'introductioneZ Publish Platform 5.2 - Webinaire d'introduction
eZ Publish Platform 5.2 - Webinaire d'introductionRoland Benedetti
 
Atelier symfony n 3
Atelier symfony n 3Atelier symfony n 3
Atelier symfony n 3Amir Souissi
 
Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012Jean-Marc Fontaine
 
PHP Composer : Pourquoi ? Comment ? Et plus ...
PHP Composer : Pourquoi ? Comment ? Et plus ...PHP Composer : Pourquoi ? Comment ? Et plus ...
PHP Composer : Pourquoi ? Comment ? Et plus ...Romain Cambien
 
Statistique de TYPO3 dans le monde
Statistique de TYPO3 dans le mondeStatistique de TYPO3 dans le monde
Statistique de TYPO3 dans le mondeYannick Pavard
 
Jit 2009 TYPO3 Performances
Jit 2009  TYPO3 PerformancesJit 2009  TYPO3 Performances
Jit 2009 TYPO3 PerformancesPatrick Gaumond
 
DevOps illustré : la jungle de la configuration d'une application
DevOps illustré : la jungle de la configuration d'une applicationDevOps illustré : la jungle de la configuration d'une application
DevOps illustré : la jungle de la configuration d'une applicationgdigugli
 
Tutoriel sur Installation de Cacti sous plateforme Windows
Tutoriel sur Installation de Cacti sous plateforme WindowsTutoriel sur Installation de Cacti sous plateforme Windows
Tutoriel sur Installation de Cacti sous plateforme Windowsemmanuel minjoe
 
Introduction à Symfony2
Introduction à Symfony2Introduction à Symfony2
Introduction à Symfony2Hugo Hamon
 
Installation de EasyPhp
Installation de EasyPhpInstallation de EasyPhp
Installation de EasyPhpdigidid
 

Tendances (20)

Audit openERP 7.0: Mise en place &Optimisation de Performances
Audit openERP 7.0: Mise en place &Optimisation de Performances Audit openERP 7.0: Mise en place &Optimisation de Performances
Audit openERP 7.0: Mise en place &Optimisation de Performances
 
Procédure de configuration et préparation de l’environnement sous windows
Procédure de configuration et préparation de l’environnement sous windowsProcédure de configuration et préparation de l’environnement sous windows
Procédure de configuration et préparation de l’environnement sous windows
 
Avantages de TYPO3 dans un environnement LAMP
Avantages de TYPO3 dans un environnement LAMPAvantages de TYPO3 dans un environnement LAMP
Avantages de TYPO3 dans un environnement LAMP
 
Rapport systéme embarqué busybox
Rapport systéme embarqué busyboxRapport systéme embarqué busybox
Rapport systéme embarqué busybox
 
APACHE HTTP
APACHE HTTPAPACHE HTTP
APACHE HTTP
 
Open erp le reporting avec jasper reports
Open erp  le reporting avec jasper reportsOpen erp  le reporting avec jasper reports
Open erp le reporting avec jasper reports
 
Mis en place d'un herbergement multiple sous centos 6.
Mis en place d'un herbergement multiple sous centos 6.Mis en place d'un herbergement multiple sous centos 6.
Mis en place d'un herbergement multiple sous centos 6.
 
Présentation de PHP 5.4 [FR]
Présentation de PHP 5.4 [FR]Présentation de PHP 5.4 [FR]
Présentation de PHP 5.4 [FR]
 
eServices-Tp5: api management
eServices-Tp5: api managementeServices-Tp5: api management
eServices-Tp5: api management
 
eZ Publish Platform 5.2 - Webinaire d'introduction
eZ Publish Platform 5.2 - Webinaire d'introductioneZ Publish Platform 5.2 - Webinaire d'introduction
eZ Publish Platform 5.2 - Webinaire d'introduction
 
Atelier symfony n 3
Atelier symfony n 3Atelier symfony n 3
Atelier symfony n 3
 
Installation open erp
Installation open erpInstallation open erp
Installation open erp
 
Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012Gestion des dépendances dans un projet PHP - Forum PHP 2012
Gestion des dépendances dans un projet PHP - Forum PHP 2012
 
PHP Composer : Pourquoi ? Comment ? Et plus ...
PHP Composer : Pourquoi ? Comment ? Et plus ...PHP Composer : Pourquoi ? Comment ? Et plus ...
PHP Composer : Pourquoi ? Comment ? Et plus ...
 
Statistique de TYPO3 dans le monde
Statistique de TYPO3 dans le mondeStatistique de TYPO3 dans le monde
Statistique de TYPO3 dans le monde
 
Jit 2009 TYPO3 Performances
Jit 2009  TYPO3 PerformancesJit 2009  TYPO3 Performances
Jit 2009 TYPO3 Performances
 
DevOps illustré : la jungle de la configuration d'une application
DevOps illustré : la jungle de la configuration d'une applicationDevOps illustré : la jungle de la configuration d'une application
DevOps illustré : la jungle de la configuration d'une application
 
Tutoriel sur Installation de Cacti sous plateforme Windows
Tutoriel sur Installation de Cacti sous plateforme WindowsTutoriel sur Installation de Cacti sous plateforme Windows
Tutoriel sur Installation de Cacti sous plateforme Windows
 
Introduction à Symfony2
Introduction à Symfony2Introduction à Symfony2
Introduction à Symfony2
 
Installation de EasyPhp
Installation de EasyPhpInstallation de EasyPhp
Installation de EasyPhp
 

Similaire à T3UNIFR12 - Réussir sa mise à jour de typo3

Les nouveautés de TYPO3 4.2
Les nouveautés de TYPO3 4.2Les nouveautés de TYPO3 4.2
Les nouveautés de TYPO3 4.2Yannick Pavard
 
Game of upgrades to liferay dxp - ep1: Migration de données
Game of upgrades to liferay dxp - ep1: Migration de donnéesGame of upgrades to liferay dxp - ep1: Migration de données
Game of upgrades to liferay dxp - ep1: Migration de donnéesQuang Tu LE
 
Optimisation des performances d’un site sous TYPO3
Optimisation des performances d’un site sous TYPO3Optimisation des performances d’un site sous TYPO3
Optimisation des performances d’un site sous TYPO3Aliénor.net
 
Liferay france symposium 2012 - montée de version d’une instance liferay
Liferay france symposium 2012 - montée de version d’une instance liferayLiferay france symposium 2012 - montée de version d’une instance liferay
Liferay france symposium 2012 - montée de version d’une instance liferaySébastien Le Marchand
 
Présentation des travaux entre TYPO3 et Alfresco
Présentation des travaux entre TYPO3 et AlfrescoPrésentation des travaux entre TYPO3 et Alfresco
Présentation des travaux entre TYPO3 et AlfrescoYannick Pavard
 
Devoxx 2018 Après Java 8, Java 9 et 10
Devoxx 2018 Après Java 8, Java 9 et 10Devoxx 2018 Après Java 8, Java 9 et 10
Devoxx 2018 Après Java 8, Java 9 et 10Jean-Michel Doudoux
 
Une gestion efficace du changement de vos structures de données relationnelle...
Une gestion efficace du changement de vos structures de données relationnelle...Une gestion efficace du changement de vos structures de données relationnelle...
Une gestion efficace du changement de vos structures de données relationnelle...Olivier DASINI
 
Apres java 8, java 9 et 10 - BreizhCamp 2018
Apres java 8, java 9 et 10 - BreizhCamp 2018Apres java 8, java 9 et 10 - BreizhCamp 2018
Apres java 8, java 9 et 10 - BreizhCamp 2018Jean-Michel Doudoux
 
Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?pprem
 
Traduction des extensions et du core de TYPO3 CMS avec XLIFF
Traduction des extensions et du core de TYPO3 CMS avec XLIFFTraduction des extensions et du core de TYPO3 CMS avec XLIFF
Traduction des extensions et du core de TYPO3 CMS avec XLIFFdfeyer
 
T3UNI12 : SOLR workshop
T3UNI12 : SOLR workshopT3UNI12 : SOLR workshop
T3UNI12 : SOLR workshopPaul Blondiaux
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieLoic Yon
 
Communiqué de presse TYPO3 V4.4
Communiqué de presse TYPO3 V4.4Communiqué de presse TYPO3 V4.4
Communiqué de presse TYPO3 V4.4Christophe Delauve
 
Introduction à eZ Publish Platform 5.3
Introduction à eZ Publish Platform 5.3 Introduction à eZ Publish Platform 5.3
Introduction à eZ Publish Platform 5.3 Roland Benedetti
 
Présentation LifeRay
Présentation LifeRayPrésentation LifeRay
Présentation LifeRayf.morin
 
Qualité Logiciel - Outils Open Source pour Java et Web
Qualité Logiciel - Outils Open Source pour Java et WebQualité Logiciel - Outils Open Source pour Java et Web
Qualité Logiciel - Outils Open Source pour Java et WebChristophe Rochefolle
 
Nouveautés dans TYPO3 CMS 6.0
Nouveautés dans TYPO3 CMS 6.0Nouveautés dans TYPO3 CMS 6.0
Nouveautés dans TYPO3 CMS 6.0Idéative
 
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...Mathieu Saby
 

Similaire à T3UNIFR12 - Réussir sa mise à jour de typo3 (20)

Les nouveautés de TYPO3 4.2
Les nouveautés de TYPO3 4.2Les nouveautés de TYPO3 4.2
Les nouveautés de TYPO3 4.2
 
Game of upgrades to liferay dxp - ep1: Migration de données
Game of upgrades to liferay dxp - ep1: Migration de donnéesGame of upgrades to liferay dxp - ep1: Migration de données
Game of upgrades to liferay dxp - ep1: Migration de données
 
Optimisation des performances d’un site sous TYPO3
Optimisation des performances d’un site sous TYPO3Optimisation des performances d’un site sous TYPO3
Optimisation des performances d’un site sous TYPO3
 
Liferay france symposium 2012 - montée de version d’une instance liferay
Liferay france symposium 2012 - montée de version d’une instance liferayLiferay france symposium 2012 - montée de version d’une instance liferay
Liferay france symposium 2012 - montée de version d’une instance liferay
 
Présentation des travaux entre TYPO3 et Alfresco
Présentation des travaux entre TYPO3 et AlfrescoPrésentation des travaux entre TYPO3 et Alfresco
Présentation des travaux entre TYPO3 et Alfresco
 
Devoxx 2018 Après Java 8, Java 9 et 10
Devoxx 2018 Après Java 8, Java 9 et 10Devoxx 2018 Après Java 8, Java 9 et 10
Devoxx 2018 Après Java 8, Java 9 et 10
 
Une gestion efficace du changement de vos structures de données relationnelle...
Une gestion efficace du changement de vos structures de données relationnelle...Une gestion efficace du changement de vos structures de données relationnelle...
Une gestion efficace du changement de vos structures de données relationnelle...
 
Apres java 8, java 9 et 10 - BreizhCamp 2018
Apres java 8, java 9 et 10 - BreizhCamp 2018Apres java 8, java 9 et 10 - BreizhCamp 2018
Apres java 8, java 9 et 10 - BreizhCamp 2018
 
Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?Quoi de neuf dans la version 11 Alexandria ?
Quoi de neuf dans la version 11 Alexandria ?
 
Traduction des extensions et du core de TYPO3 CMS avec XLIFF
Traduction des extensions et du core de TYPO3 CMS avec XLIFFTraduction des extensions et du core de TYPO3 CMS avec XLIFF
Traduction des extensions et du core de TYPO3 CMS avec XLIFF
 
Octo Maven.pdf
Octo Maven.pdfOcto Maven.pdf
Octo Maven.pdf
 
T3UNI12 : SOLR workshop
T3UNI12 : SOLR workshopT3UNI12 : SOLR workshop
T3UNI12 : SOLR workshop
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partie
 
Communiqué de presse TYPO3 V4.4
Communiqué de presse TYPO3 V4.4Communiqué de presse TYPO3 V4.4
Communiqué de presse TYPO3 V4.4
 
Introduction à eZ Publish Platform 5.3
Introduction à eZ Publish Platform 5.3 Introduction à eZ Publish Platform 5.3
Introduction à eZ Publish Platform 5.3
 
Présentation LifeRay
Présentation LifeRayPrésentation LifeRay
Présentation LifeRay
 
Qualité Logiciel - Outils Open Source pour Java et Web
Qualité Logiciel - Outils Open Source pour Java et WebQualité Logiciel - Outils Open Source pour Java et Web
Qualité Logiciel - Outils Open Source pour Java et Web
 
Nouveautés dans TYPO3 CMS 6.0
Nouveautés dans TYPO3 CMS 6.0Nouveautés dans TYPO3 CMS 6.0
Nouveautés dans TYPO3 CMS 6.0
 
iTunes Stats
iTunes StatsiTunes Stats
iTunes Stats
 
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
Découvrez OpenRefine: un outil gratuit pour nettoyer, préparer et enrichir vo...
 

T3UNIFR12 - Réussir sa mise à jour de typo3

  • 1. Réussir sa mise à jour de TYPO3 26.06.2012 Thomas LEROY <thomas@site-ngo.fr>
  • 3. Objectif TYPO3 TYPO3 MISE À JOUR ANCIEN RÉCENT T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 4. Analyse de l'existant - Définir notre environnement de travail
  • 5. Analyse de l'existant Environnement technique PHP • Version • Variables php.ini • Extensions chargées Type / Version de l'OS Base de données • Version • Encodage Serveur d'application • Type (apache / IIS / ...) • Version • Modules chargés Liste des CRON T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 6. Analyse de l'existant Environnement TYPO3 • Version de TYPO3 • Encodage • Liste des extensions • Extensions du TER • Développements spécifiques • XCLASS • Hooks T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 7. Environnement de travail https://github.com/Apen/TYPO3-backup/blob/master/saveTypo3Website.sh • Effectuer une sauvegarde de l'instance TYPO3 de production • Travailler dans le même environnement applicatif (sauf montée de version) • Travailler dans un environnement de TEST • Versionner vos scripts et éventuellement les développements spécifiques T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 8. Mise à jour de TYPO3
  • 9. Rappel - Architecture des fichiers http://typo3.org/documentation/document-library/guides/doc_guide_install/2.0.2/view/ fileadmin : fichiers utiles pour la contribution typo3conf : configuration du site uploads : fichiers attachés à des enregistrements de la BD typo3temp : fichiers temporaires générés par TYPO3 sources : t3lib / typo3 / index.php T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 10. Les étapes de la mise à jour 1. Sauvegarder ! 2. Installer les nouvelles sources 3. "Upgrade wizard" 4. "Compare database" 5. Vider les caches : a) truncate cache_* b) Vider typo3temp c) Supprimer temp_CACHED_* 6. Reinitialiser les paramètres utilsateurs T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 13. Différences entre les versions de TYPO3
  • 14. Différences entre les versions de TYPO3 De nombreuses nouvelles versions : 4.5 LTS, 4.6, 4.7... 6.0 ?!? • Le cycle de développement d’une nouvelle version est passé à 6 mois • Pour l'instant la version conseillée pour un support optimal est la 4.5 Pour toutes versions inférieures à la 4.1, il faut : 1. mettre à jour en 4.1 2. mettre à jour en 4.5 3. mettre à jour en 4.7 Pour toutes versions supérieures à la 4.1, il faut : 1. mettre à jour en 4.5 2. mettre à jour en 4.7 T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 16. Passage à la 4.2 http://wiki.typo3.org/Upgrade#Upgrading_from_4.1_to_4.2 Compatible PHP 5.1.x/5.2.x UTF-8 non obligatoire Certains champs sont passés de BLOB à TEXT (notamment le champ "config" des gabarits typoscript). Il est donc indispensable de passer par une conversion, exemple: ALTER TABLE `sys_template` CHANGE `config` `zzz_deleted_config` BLOB NOT NULL; ALTER TABLE `sys_template` ADD `config` TEXT NOT NULL AFTER `zzz_deleted_config`; UPDATE `sys_template` SET `config` = CAST(`zzz_deleted_config` AS CHAR); ALTER TABLE `sys_template` DROP `zzz_deleted_config`; T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 17. Passage à la 4.3 http://wiki.typo3.org/Upgrade#Upgrading_to_4.3 PHP 5.2.x obligatoire UTF-8 conseillé T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 18. Passage à la 4.4 http://wiki.typo3.org/Upgrade#Upgrading_to_4.4 Même démarche que pour une 4.3 PHP 5.2.x obligatoire / 5.3.x supporté UTF-8 conseillé Possible problèmes de skins (t3skin) T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 19. Passage à la 4.5 http://wiki.typo3.org/Upgrade#Upgrading_to_4.5_Long_Term_Support PHP 5.2.x obligatoire / 5.3.x supporté UTF-8 obligatoire Utilisation de Swiftmailer conseillée pour les mails Workspaces Vérification des fonctions dépréciées avec le deprecated.log (en prévision d'une passage vers la 4.5>) T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 20. Passage à la 4.6 http://wiki.typo3.org/Upgrade#Upgrading_to_4.6 PHP 5.3.x obligatoire UTF-8 obligatoire Utilisation de Swiftmailer obligatoire pour les mails Certaines propriétés du RTE dépréciées (upgrade wizard) Fonctions dépréciées supprimées T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 21. Passage à la 4.7 http://wiki.typo3.org/Upgrade#Upgrading_to_4.7 PHP 5.3.x obligatoire UTF-8 obligatoire Suppression de : $TYPO3_CONF_VARS['BE']['forceCharset'] $TYPO3_CONF_VARS['SYS']['setDBinit'] T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 22. Mise à jour de l'encodage
  • 23. Conversion UTF-8 de la base de données http://wiki.typo3.org/UTF-8_support#Convert_an_already_existing_database_to_UTF-8 mysqldump -u (user) -p(pass) --max_allowed_packet=10000000 typo3 > typo3_utf8.sql + sed -e 's/latin1_swedish_ci/utf8_general_ci/g' -i "" typo3_utf8.sql Si besoin : iconv -f iso-8859-1//TRANSLIT//IGNORE -t utf8 typo3_utf8.sql > dump-iconv.sql + mysql -u (user) -p(pass) --default-character-set=utf8 typo3 < typo3_utf8.sql Convient dans la plupart des cas, mais il y a toujours des cas particuliers... T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 24. Conversion UTF-8 du backend http://wiki.typo3.org/UTF-8_support#TYPO3_settings $TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;'; $TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8'; Toujours tester l'ajout et le rendu de contenu pour vérifier l'encodage T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 25. Conversion des templates Si nécessaire... Pour TemplaVoilà comme pour les autres systèmes Manuellement avec un éditeur de texte ou iconv T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 26. Conversion des fichiers Si nécessaire... Peut concerner certains fichiers locallang ou PHP Manuellement avec un éditeur de texte ou iconv T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 27. Mise à jour des extensions - Extensions du TER
  • 28. Extensions du TER Méfiez-vous des évolutions... • Vérifier que l'extension soit toujours supportée (et éventuellement changer) • Vérifier sur typo3.org les changements apportés à chaque version • Vérifier que la version soit compatible avec la version de TYPO3 visée (ex: direct_mail et la 4.7) • Vérifier que la nouvelle version n'a fonctionnellement pas changé (ex: powermail et les templates) Bref, tester, tester, et tester !!! T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 29. Mise à jour des extensions - Développements spécifiques
  • 30. Développement spécifique Vérification de la qualité du code - le plus facile... • Fonctions dépréciées avec le deprecated.log • Compatibilité avec PHP 5.3 > • Code HTML "en dur" (labels) T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 31. Développement spécifique Vérification de la compatibilité du code - Le plus dur... • Vérification de l'existence des hooks (à priori toujours existant sauf refonte de code) • Vérification des XCLASS (contrôle des classes et méthodes surchargées) T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 32. Vérification fonctionnelle Est-ce que ça marche encore ? Pour chaque plugin/module/...: • On vérifie manuellement les fonctionnalités frontend ou backend • Execution de tests unitaires • Éventuellement, exécution de scénarios sous Selenium IDE T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 33. Mise à jour des traductions
  • 34. Mise à jour des traductions http://translation.typo3.org/ • Vérifier que les traductions n'ont pas évolué • Et eventuellement contribuer à la traduction de l'extension :-) T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 35. Questions / Réponses T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
  • 36. Merci Retrouvez cette présentation sur www.site-ngo.fr Thomas LEROY <thomas@site-ngo.fr> T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3