Upload
sitengo
View
2.925
Download
1
Embed Size (px)
DESCRIPTION
L'objectif de cette conférence est de faire le tour des étapes nécessaires pour qu'une mise à jour de TYPO3 se déroule correctement. Différents point sont abordés comme par exemple les outils qui peuvent nous accompagner lors des mises à jour, les aspects de l'environnement technique ou encore les actions automatiques et manuelles à effectuer (script Shell ou Module Installation).
Citation preview
Objectif
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
TYPO3
ANCIEN
TYPO3
RÉCENT MISE À JOUR
Objectif
Analyse de l'existant -
Définir notre environnement de travail
Analyse de l'existant
Type / Version de l'OS
Environnement technique
Base de données
• Version
• Encodage
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Serveur d'application
• Type (apache / IIS / ...)
• Version
• Modules chargés
PHP
• Version
• Variables php.ini
• Extensions chargées
Liste des CRON
Analyse de l'existant
• Version de TYPO3
• Encodage
• Liste des extensions
• Extensions du TER
• Développements spécifiques
• XCLASS
• Hooks
Environnement TYPO3
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Environnement de travail
• 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
https://github.com/Apen/TYPO3-backup/blob/master/saveTypo3Website.sh
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Mise à jour de TYPO3
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
Rappel - Architecture des fichiers http://typo3.org/documentation/document-library/guides/doc_guide_install/2.0.2/view/
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
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
Les étapes de la mise à jour
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Upgrade Wizard
Compare Database
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
Différences entre les versions de TYPO3
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Versions de TYPO3
Passage à la 4.2
Compatible PHP 5.1.x/5.2.x
UTF-8 non obligatoire
http://wiki.typo3.org/Upgrade#Upgrading_from_4.1_to_4.2
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
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`;
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:
Passage à la 4.3
PHP 5.2.x obligatoire
UTF-8 conseillé
http://wiki.typo3.org/Upgrade#Upgrading_to_4.3
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Passage à la 4.4 Même démarche que pour une 4.3
PHP 5.2.x obligatoire / 5.3.x supporté
UTF-8 conseillé
http://wiki.typo3.org/Upgrade#Upgrading_to_4.4
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Possible problèmes de skins (t3skin)
Passage à la 4.5 PHP 5.2.x obligatoire / 5.3.x supporté
UTF-8 obligatoire
Utilisation de Swiftmailer conseillée pour les mails
http://wiki.typo3.org/Upgrade#Upgrading_to_4.5_Long_Term_Support
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Workspaces
Vérification des fonctions dépréciées avec le deprecated.log (en
prévision d'une passage vers la 4.5>)
Passage à la 4.6 PHP 5.3.x obligatoire
UTF-8 obligatoire
Utilisation de Swiftmailer obligatoire pour les mails
http://wiki.typo3.org/Upgrade#Upgrading_to_4.6
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Certaines propriétés du RTE dépréciées (upgrade wizard)
Fonctions dépréciées supprimées
Passage à la 4.7
PHP 5.3.x obligatoire
UTF-8 obligatoire
http://wiki.typo3.org/Upgrade#Upgrading_to_4.7
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Suppression de :
$TYPO3_CONF_VARS['BE']['forceCharset']
$TYPO3_CONF_VARS['SYS']['setDBinit']
Mise à jour de l'encodage
Conversion UTF-8 de la base de données
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...
http://wiki.typo3.org/UTF-8_support#Convert_an_already_existing_database_to_UTF-8
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Conversion UTF-8 du backend
$TYPO3_CONF_VARS['SYS']['setDBinit'] = 'SET NAMES utf8;';
$TYPO3_CONF_VARS['BE']['forceCharset'] = 'utf-8';
http://wiki.typo3.org/UTF-8_support#TYPO3_settings
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Toujours tester l'ajout et le rendu de contenu pour vérifier l'encodage
Conversion des templates
Pour TemplaVoilà comme pour les autres systèmes
Manuellement avec un éditeur de texte
ou
iconv
Si nécessaire...
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Conversion des fichiers
Peut concerner certains fichiers locallang ou PHP
Manuellement avec un éditeur de texte ou iconv
Si nécessaire...
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Mise à jour des extensions -
Extensions du TER
Extensions du TER
• 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 !!!
Méfiez-vous des évolutions...
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Mise à jour des extensions -
Développements spécifiques
Développement spécifique
• Fonctions dépréciées avec le deprecated.log
• Compatibilité avec PHP 5.3 >
• Code HTML "en dur" (labels)
Vérification de la qualité du code - le plus facile...
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
• 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)
Vérification de la compatibilité du code - Le plus dur...
Développement spécifique
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Vérification fonctionnelle
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
Est-ce que ça marche encore ?
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3
Mise à jour des traductions
Mise à jour des traductions
• Vérifier que les traductions n'ont pas évolué
• Et eventuellement contribuer à la traduction de l'extension :-)
http://translation.typo3.org/
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 <[email protected]>
T3UNI12 26.06.2012 Réussir sa mise à jour de TYPO3