Drupal updaten

afbeelding van hansrossel

Onderstaande werkwijzen betreft het uitvoeren van puntsupdates van Drupal core en modules, bijvoorbeeld van Drupal 6.19 naar 6.20 of van een bepaalde module binnen deze installatie.
Bij grote upgrades bijvoorbeeld van Drupal 5 naar Drupal 6 komt veel meer te kijken en raadpleeg je best http://drupal.org/upgrade. Updates van Drupal 6 naar Drupal 7 zijn op dit ogenblik nog niet aan te raden, daarvoor is het nog te vroeg.

Werkwijze

1. Backup van bestanden: Een copie maken van de modulebestanden die je gaat vervangen en dit opslaan in een lokale map met de datum van vandaag
2. Backup van database: De module http://drupal.org/project/backup_migrate installeren. In backup_migrate eens klikken op quick backup en het backup bestand opslaan in de map van 1.
3. (Ik zet de site niet in onderhoudsmodule omdat het zelden gebeurt dat er foutmeldingen zijn, zeker niet als je de update eerste hebt getest op een testsite, en het kleine risico op fouten op het scherm volgens mij nog steeds minder erg is dan een website offline te plaatsen.)
4. (Ik schakel de module niet uit, dit is enkel nodig bij grote updates bijvoorbeeld van Drupal 5 naar Drupal 6)
5. De module of Drupal core map overschrijven met de nieuwe bestanden
6. Meteen /update.php uitvoeren
7. Meteen de site controleren: alle belangrijke pagina's overlopen, ook uitgelogd eens kijken, de status rapportage en logs bekijken als er geen opmerkingen zijn, de logs nog eens opnieuw bekijken na een paar uur om zeker te zijn dat alles ok is. Controleer "Beschikbare updates" om te zien dat je site wel degelijk de laatste versie heeft. Zie ook http://heine.familiedeelstra.com/drupal-shows-old-version-after-update indien je toch nog de oude versie zou zien na een update.
8. Als het fout loopt de site meteen offline zetten (dan wel!), meteen de oude bestanden van de modules terugzetten en via backup_migrate restore doen van de backup van de database. De logs en issues van de modules die je geinstalleerd hebt bekijken.

Met Drush

Drush is een command line manager voor Drupal. Je dient ssh (command line) toegang te hebben tot je server wat op de meeste goedkope shared hostings niet aanwezig is. Drush laat je oa toe met korte opdrachten op een heel snelle manier één of meerdere sites te updaten.
1. Een backup van de database nemen met "drush bam-backup". Op een testcopie van de site via "drush up" alle modules updaten (copie van .htaccess terugzetten). Drush maakt zelf een backup van de bestanden.
2. Op de testsite grondig doortesten en eventuele bugs rustig onderzoeken en oplossen
3. Database backuppen met "drush bam-backup"
4. Via svn of git de nieuwe code naar de live site pushen
Met het http://groups.drupal.org/aegir-hosting-system kun je ook deze processen verder automatiseren als je verschillende sites hebt die je samen wil beheren en updaten.

Drupal updaten vanuit de admin interface

Verder is er ook nog de http://drupal.org/project/plugin_manager waarmee ja vanuit Drupal zelf modules kunt installeren en updaten, maar die maakt geen backups dus dat mag je niet vergeten. Bij Drupal 7 zit die functionaliteit gedeeltelijk ingebouwd. Let op: je moet bij die werkwijze nog steeds zelf eerst je backups van zowel database als bestanden maken en er is geen ingebouwde mogelijkheid om een eventuele update die fout loopt terug te draaien.

Reacties

Nieuwe reactie inzenden

RPeter

Licentie documentatiepagina's

De documentatiepagina's op deze website zijn © 2000-2010 van de individuele auteurs en kunnen worden gebruikt in overeenstemming met de Creative Commons License, Attribution-ShareAlike 2.0. PHP code is gedistribueerd onder de GNU General Public License