Difference between revisions of "Drupal Upgrade Plan 2010"
m (→Debian Package Installation: added packages installed) |
m (→Current modules: complete list of urls etc) |
||
Line 22: | Line 22: | ||
=== Current modules === | === Current modules === | ||
− | {| cellspacing="1" cellpadding="1" border="1" style="width: | + | {| cellspacing="1" cellpadding="1" border="1" style="width: 600px; height: 387px;" |
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| Category | | Category | ||
Line 33: | Line 28: | ||
| 5.x version | | 5.x version | ||
| 6.x recommended version | | 6.x recommended version | ||
− | |||
|- | |- | ||
| *Administration | | *Administration | ||
Line 274: | Line 268: | ||
| 5.x-1.x-dev | | 5.x-1.x-dev | ||
| [http://ftp.drupal.org/files/projects/notify-6.x-1.2.tar.gz 6.x-1.2] | | [http://ftp.drupal.org/files/projects/notify-6.x-1.2.tar.gz 6.x-1.2] | ||
− | |||
|- | |- | ||
| Other | | Other | ||
Line 292: | Line 285: | ||
|- | |- | ||
| | | | ||
− | | *Feedback | + | | *[http://drupal.org/project/feedback Feedback] |
| 5.x-1.x-dev | | 5.x-1.x-dev | ||
− | | | + | | [http://ftp.drupal.org/files/projects/feedback-6.x-2.1.tar.gz 6.x-2.1] |
|- | |- | ||
| | | | ||
− | | *Insert Block | + | | *[http://drupal.org/project/insert_block Insert Block] |
| 5.x-1.x-dev | | 5.x-1.x-dev | ||
− | | | + | | [http://ftp.drupal.org/files/projects/insert_block-6.x-1.x-dev.tar.gz 6.x-1.x-dev] |
|- | |- | ||
| | | | ||
− | | *Insert view | + | | *[http://drupal.org/project/insert_view Insert view] |
| 5.x-1.x-dev | | 5.x-1.x-dev | ||
− | | | + | | [http://ftp.drupal.org/files/projects/insert_view-6.x-2.x-dev.tar.gz 6.x-2.x-dev] '''See security note''' |
|- | |- | ||
| | | | ||
− | | * | + | | *[http://drupal.org/project/panelsPanels] |
| 5.x-1.2 | | 5.x-1.2 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/panels-6.x-3.7.tar.gz 6.x-3.7] |
|- | |- | ||
| | | | ||
− | | *path_image | + | | *[http://drupal.org/project/path_image path_image] |
| 5.x-1.1 | | 5.x-1.1 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/path_image-6.x-1.0.tar.gz 6.x-1.0] |
|- | |- | ||
| | | | ||
− | | *Path Redirect | + | | *[http://drupal.org/project/path_redirect Path Redirect] |
| 5.x-1.1-beta1 | | 5.x-1.1-beta1 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/path_redirect-6.x-1.0-beta7.tar.gz 6.x-1.0-beta7] |
|- | |- | ||
| | | | ||
− | | *PEAR Wiki filter | + | | *[http://drupal.org/project/pearwiki_filter PEAR Wiki filter] |
| 5.x-1.1 | | 5.x-1.1 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/pearwiki_filter-6.x-1.0-beta1.tar.gz 6.x-1.0-beta1] '''Note: site says to consider [http://drupal.org/project/flexifilter flexifilter instead''' |
|- | |- | ||
| | | | ||
− | | Permissions Sorter | + | | [http://drupal.org/project/permissions_sorter Permissions Sorter] |
| 5.x-1.x-dev | | 5.x-1.x-dev | ||
− | | | + | | '''No release after v5, no dev release''' |
|- | |- | ||
| | | | ||
− | | *Recent changes | + | | *[http://drupal.org/project/recent_changes Recent changes] |
| 5.x-1.1 | | 5.x-1.1 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/recent_changes-6.x-1.x-dev.tar.gz 6.x-1.x-dev] '''Note: access check is broken at the moment''' |
|- | |- | ||
| | | | ||
− | | Search Engine Referers | + | | [http://drupal.org/project/search_engine_referers Search Engine Referers] |
| 5.x-1.0 | | 5.x-1.0 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/search_engine_referers-6.x-1.2.tar.gz 6.x-1.2] |
|- | |- | ||
| | | | ||
− | | Secure Pages | + | | [http://drupal.org/project/securepages Secure Pages] |
| 5.x-1.x-dev | | 5.x-1.x-dev | ||
− | | | + | | [http://ftp.drupal.org/files/projects/securepages-6.x-1.8.tar.gz 6.x-1.8] '''Note: "Make sure that your web server has SSL enabled and your Drupal installation has been configured to support SSL access"''' '''Note: "Users of this module should consider using [http://drupal.org/project/securepages_prevent_hijack Secure Pages Hijack Prevention] which makes "mixed mode" SSL more secure". |
|- | |- | ||
| | | | ||
− | | Site map | + | | [http://drupal.org/project/site_map Site map] |
| 5.x-1.x-dev | | 5.x-1.x-dev | ||
− | | | + | | [http://ftp.drupal.org/files/projects/site_map-6.x-2.1.tar.gz 6.x-2.1] |
|- | |- | ||
| | | | ||
− | | *TinyMCE | + | | *[http://drupal.org/project/tinymce TinyMCE] |
| 5.x-1.9 | | 5.x-1.9 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/tinymce-6.x-1.1-dev.tar.gz 6.x-1.1-dev] '''Note: This module has been replaced by [http://drupal.org/project/wysiwyg Wysiwyg API]''' |
|- | |- | ||
| | | | ||
− | | Token | + | | [http://drupal.org/project/token Token] |
| 5.x-1.9 | | 5.x-1.9 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/token-6.x-1.14.tar.gz 6.x-1.14] |
|- | |- | ||
| | | | ||
− | | *Upload path | + | | *[http://drupal.org/project/uploadpath Upload path] |
| 5.x-1.x-dev | | 5.x-1.x-dev | ||
− | | | + | | [http://ftp.drupal.org/files/projects/uploadpath-6.x-1.0.tar.gz 6.x-1.0] |
|- | |- | ||
− | | *Spam control | + | | *Spam control - '''NOTE: several other captcha modules are now available''' |
− | | CAPTCHA | + | | [http://drupal.org/project/captcha CAPTCHA] |
| 5.x-3.0 | | 5.x-3.0 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/captcha-6.x-2.2.tar.gz 6.x-2.2] |
|- | |- | ||
| | | | ||
| Image CAPTCHA | | Image CAPTCHA | ||
| 5.x-3.0 | | 5.x-3.0 | ||
− | | | + | | '''? part of above module?''' |
|- | |- | ||
| | | | ||
| Text CAPTCHA | | Text CAPTCHA | ||
| 5.x-3.0 | | 5.x-3.0 | ||
− | | | + | | '''? part of above module?''' |
|- | |- | ||
| *Syndication | | *Syndication | ||
− | | Syndication | + | | [http://drupal.org/project/syndication Syndication] |
| 5.x-1.x-dev | | 5.x-1.x-dev | ||
− | | | + | | [http://ftp.drupal.org/files/projects/syndication-6.x-1.6.tar.gz 6.x-1.6] |
|- | |- | ||
| *Views | | *Views | ||
− | | Views | + | | [http://drupal.org/project/views Views] |
| 5.x-1.6 | | 5.x-1.6 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/views-6.x-2.11.tar.gz 6.x-2.11] |
|- | |- | ||
| | | | ||
− | | Views RSS | + | | [http://drupal.org/project/views_rss Views RSS] |
| 5.x-1.6 | | 5.x-1.6 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/views_rss-6.x-1.0-beta5.tar.gz 6.x-1.0-beta5] |
|- | |- | ||
| | | | ||
| Views Theme Wizard | | Views Theme Wizard | ||
| 5.x-1.6 | | 5.x-1.6 | ||
− | | | + | | '''?include in views module?''' |
|- | |- | ||
| | | | ||
| Views UI | | Views UI | ||
| 5.x-1.6 | | 5.x-1.6 | ||
− | | | + | | '''?include in views module?''' |
|- | |- | ||
| Voting | | Voting | ||
− | | Fivestar | + | | [http://drupal.org/project/fivestar Fivestar] |
| 5.x-1.13 | | 5.x-1.13 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/fivestar-6.x-1.19.tar.gz 6.x-1.19] |
|- | |- | ||
| | | | ||
| Fivestar Comments | | Fivestar Comments | ||
| 5.x-1.13 | | 5.x-1.13 | ||
− | | | + | | '''Included in above?''' |
|- | |- | ||
| Voting API | | Voting API | ||
− | | Voting API | + | | [http://drupal.org/project/voting Voting API] |
| 5.x-1.6 | | 5.x-1.6 | ||
− | | | + | | '''Deprecated?''' |
|- | |- | ||
| *WebFM | | *WebFM | ||
− | | Web File Manager | + | | [http://drupal.org/project/webfm Web File Manager] |
| 5.x-2.4 | | 5.x-2.4 | ||
− | | | + | | [http://ftp.drupal.org/files/projects/webfm-5.x-2.x-dev.tar.gz 5.x-2.x] and [http://ftp.drupal.org/files/projects/webfm-6.x-2.12.tar.gz 6.x-2.12] '''Note: See upgrade notes, must upgrade 5.x first''' |
|} | |} | ||
Revision as of 13:06, 6 October 2010
Previous upgrade notes: Drupal Upgrade Plan
- These notes are mostly just a copy of the previous upgrade, but are being modified still :)
Upgrading the OSGeo Drupal CMS is a complicated task further complicated by the use of multi-site configuration. To upgrade from current 5.3 (??) to the newest 6.x (??) version the following steps should be taken (doubles as a check list):
Time estimation
I estimate that the total read-only time for the OSGeo sites will be around 1 day if everything goes according to plan, this does not include the preliminary tasks which have to be completed prior to doing the upgrade.
Preliminary tasks
DNS Changes
Redirect any *test* instances?
Debian Package Installation
osgeo3/4 run debian linux OS. The server has no apache, drupal or any other packages already installed. Here is the list of packages to be installed to get support for our Drupal sites up and running:
- apache2
UPDATE 6-Oct-10: The following packages have been installed: apache2 mysql5.1 php5-gd php5 php5-mysql php-5-cli
Review Module Availability
- Which modules needed - check that all are available in 6.x
Current modules
Category | Module | 5.x version | 6.x recommended version |
*Administration | ldapauth | 5.x-1.3 | 6.x-1.0-beta2 |
ldapdata | 5.x-1.3 | above | |
ldapgroups | 5.x-1.3 | above | |
*CCK | Content | 5.x-1.6-1 | 6.x-2.8 |
Content Copy | 5.x-1.6-1 | ||
Content Taxonomy | 5.x-1.x-dev | 6.x-1.0-rc2 | |
Content Taxonomy Options | 5.x-1.x-dev | ||
Date | 5.x-1.7 | 6.x-2.6 | |
Date Copy | 5.x-1.7 | ||
5.x-1.0 | 6.x-1.2 | ||
Fieldgroup | 5.x-1.6-1 | in cck main | |
Image (CCK module, not basic) | 5.x-1.1 | in cck?? | |
Link | 5.x-1.x-dev | 6.x-2.9 | |
Node Reference | 5.x-1.6-1 | in cck | |
Number | 5.x-1.6-1 | in cck? | |
Option Widgets | 5.x-1.6-1 | ? | |
Text | 5.x-1.6-1 | in cck? | |
User Reference | 5.x-1.6-1 | 6.x-2.6 | |
Core - optional | *Aggregator | 5.3 | 6.x-1.11 (requires PHP5 with curl support) Or is this in core already? |
*Blog | 5.3 | in core? | |
Comment | 5.3 | in core? | |
Drupal | 5.3 | ||
Help | 5.3 | ||
*Locale | 5.3 | core? | |
*Menu-Localizer | 5.3 | core? | |
*Path | 5.3 | core? | |
*Profile | 5.3 | core? | |
Search | 5.3 | core? | |
*Statistics | 5.3 | core | |
*Taxonomy-Localizer | 5.3 | core | |
*Upload | 5.3 | core | |
*Event | Basic event | 5.x-1.0 | 6.x-2.x-dev See notes about upgrade troubles! |
Event | 5.x-1.0 | above | |
Event All Day | 5.x-1.0 | above | |
Event Views | 5.x-1.0 | 6.x-2.4 | |
*Image | Image | 5.x-1.6 | 6.x-1.0-beta6 |
Image Attach | 5.x-1.6 | in above | |
Image Gallery | 5.x-1.6 | in above | |
Image Import | 5.x-1.6 | in above | |
*Localizer | Localizer | 5.x-1.10 | NOT PORTED - development stopped |
Localizer block | 5.x-1.10 | ||
Localizer menu | 5.x-1.10 | ||
Localizer node | 5.x-1.10 | ||
Localizer taxonomy | 5.x-1.10 | ||
Localizer user | 5.x-1.10 | ||
Localizer variable | 5.x-1.10 | ||
Localizer views | 5.x-1.10 | ||
Notify | 5.x-1.x-dev | 6.x-1.2 | |
Other | *Bookreview | 5.x-1.x-dev | Development stopped in 2010? |
*Date API | 5.x-1.7 | ? which one? Date? | |
*Diff | 5.x-1.1 | 6.x-2.1 | |
*Feedback | 5.x-1.x-dev | 6.x-2.1 | |
*Insert Block | 5.x-1.x-dev | 6.x-1.x-dev | |
*Insert view | 5.x-1.x-dev | 6.x-2.x-dev See security note | |
*[1] | 5.x-1.2 | 6.x-3.7 | |
*path_image | 5.x-1.1 | 6.x-1.0 | |
*Path Redirect | 5.x-1.1-beta1 | 6.x-1.0-beta7 | |
*PEAR Wiki filter | 5.x-1.1 | 6.x-1.0-beta1 Note: site says to consider [http://drupal.org/project/flexifilter flexifilter instead | |
Permissions Sorter | 5.x-1.x-dev | No release after v5, no dev release | |
*Recent changes | 5.x-1.1 | 6.x-1.x-dev Note: access check is broken at the moment | |
Search Engine Referers | 5.x-1.0 | 6.x-1.2 | |
Secure Pages | 5.x-1.x-dev | 6.x-1.8 Note: "Make sure that your web server has SSL enabled and your Drupal installation has been configured to support SSL access" Note: "Users of this module should consider using Secure Pages Hijack Prevention which makes "mixed mode" SSL more secure". | |
Site map | 5.x-1.x-dev | 6.x-2.1 | |
*TinyMCE | 5.x-1.9 | 6.x-1.1-dev Note: This module has been replaced by Wysiwyg API | |
Token | 5.x-1.9 | 6.x-1.14 | |
*Upload path | 5.x-1.x-dev | 6.x-1.0 | |
*Spam control - NOTE: several other captcha modules are now available | CAPTCHA | 5.x-3.0 | 6.x-2.2 |
Image CAPTCHA | 5.x-3.0 | ? part of above module? | |
Text CAPTCHA | 5.x-3.0 | ? part of above module? | |
*Syndication | Syndication | 5.x-1.x-dev | 6.x-1.6 |
*Views | Views | 5.x-1.6 | 6.x-2.11 |
Views RSS | 5.x-1.6 | 6.x-1.0-beta5 | |
Views Theme Wizard | 5.x-1.6 | ?include in views module? | |
Views UI | 5.x-1.6 | ?include in views module? | |
Voting | Fivestar | 5.x-1.13 | 6.x-1.19 |
Fivestar Comments | 5.x-1.13 | Included in above? | |
Voting API | Voting API | 5.x-1.6 | Deprecated? |
*WebFM | Web File Manager | 5.x-2.4 | 5.x-2.x and 6.x-2.12 Note: See upgrade notes, must upgrade 5.x first |
Current modules
...
Theme upgrade
Wave a magic wand to complete this step.
web.osgeo.org server tasks
- install packages
- setup webroot like this:
- /var/www/drupal -> drupal-version
- /var/www/site.osgeo.org (most of /var/www/drupal stuff symlinked here)
- This way all sites have their own files directory for uploads and images)
- install drupal (old version)
- copy all sites over
- upgrade to Drupal 6 (more details later)
osgeo2 server tasks
- download Drupal 4.7.8
- Download Drupal 5.3 and modules:
- captcha
- content (CCK)
- date
- imagefield
- number (comes with CCK)
- link (comes with CCK)
- optionwidgets (comes with CCK)
- text (comes with CCK)
- diff
- event
- basicevent
- feedback
- image
- image_gallery (part of image)
- insert_block
- LDAP Integration consists of:
- ldapauth
- ldapdata
- ldapgroups
- locale
- localizer
- localizerblock
- localizermenu
- localizernode
- localizertaxonomy
- localizeruser
- localizerviews
- localizer
- path_image
- pearwiki_filter
- recent_changes
- syndication
- tinymce
- imce
- views
- views_rss
- views_theme_wizard
- views_ui
- webfm
- Build a new osgeo theme, visually the same as the old theme. Based on 5.3 bluemarine
These items still need doing
- create new directory structure
- /var/www/drupal-5.3 (extracted from the tarball)
- /var/www/drupal (symlnk to above)
- /var/www/osgeo (symlink contents of drupal here)
- /var/www/osgeo/files
- /var/www/fdo (like osgeo)
- /var/www/mapguide
- /var/www/mapbender
Actual Upgrade sequence
osgeo1
- Make a Backup of all 4 Drupal databases and the files.
- Make all Drupal sites read-only by taking away write access
osgeo2
- Extract osgeo1 files to /var/www/drupal
- Create a new databases for the sites
- drupal_osgeo
- drupal_fdo
- drupal_mapguide
- drupal_mapbender
- Move old drupal test.osgeo.net to run on dev.osgeo.net
- Add dev.osgeo.conf to Apache
- Point osgeo.conf to /var/www/drupal
- Point fdo.conf to /var/www/drupal
- Point mapguide.conf to /var/www/drupal
- Point mapbender.conf to /var/www/drupal
- Upgrade Drupal to 4.7.8
- Untar drupal-4.7.8 to /var/www/drupal-4.7.8
- Log in as 'admin' to osgeo site
- Log in as 'admin' to fdo site
- Log in as 'admin' to mapguide site
- Log in as 'admin' to mapbender site
- Disable all non-core modules on osgeo (with mysql update) [see below]
- Disable all non-core modules on fdo (with mysql update) [see below]
- Disable all non-core modules on mapguide (with mysql update) [see below]
- Disable all non-core modules on mapbender (with mysql update) [see below]
- Switch to bluemarine theme (Drupal standard) on osgeo (with mysql update) [see below]
- Switch to bluemarine theme (Drupal standard) on fdo (with mysql update) [see below]
- Switch to bluemarine theme (Drupal standard) on mapguide (with mysql update) [see below]
- Switch to bluemarine theme (Drupal standard) on mapbender (with mysql update) [see below]
mv /var/www/drupal /var/www/drupal-old
ln -s /var/www/drupal-4.7.8 /var/www/drupal
rm -rf /var/www/drupal-4.7.8/sites
mv /var/www/drupal-old/sites /var/www/drupal-4.7.8
- point browser to test.drupal.org/update.php
- point browser to fdo-test.drupal.org/update.php
- point browser to mapguide-test.drupal.org/update.php
- point browser to mapbender-test.drupal.org/update.php
- Upgrade to 5.3
- log in as admin
- Untar drupal-5.3 to /var/www/drupal-5.3
ln -s /var/www/drupal-5.3 /var/www/drupal
rm -rf /var/www/drupal-5.3/sites
mv /var/www/drupal-4.7.8/sites /var/www/drupal-5.3
- point browser to test.drupal.org/update.php
- point browser to fdo-test.drupal.org/update.php
- point browser to mapguide-test.drupal.org/update.php
- point browser to mapbender-test.drupal.org/update.php
- install missing modules
- enable required modules
- enable the osgeo theme on osgeo
- enable the osgeo theme on fdo
- enable the osgeo theme on mapguide
- enable the osgeo theme on mapbender
- dump databases and tar files and move the new site over to osgeo1
osgeo1
- load the new site files and databases
- edit apache config files to point to new sites.
- www.drupal.org
- Point osgeo.conf to /var/www/drupal
- Point fdo.conf to /var/www/drupal
- Point mapguide.conf to /var/www/drupal
- Point mapbender.conf to /var/www/drupal
dev.osgeo.conf
<VirtualHost 66.223.95.243:80> ServerName dev.osgeo.net DocumentRoot /var/www/html ErrorLog /var/log/httpd/osgeo-error_log CustomLog /var/log/httpd/osgeo-access_log common <Directory "/var/www/html"> Options Indexes FollowSymLinks AllowOverride all Order allow,deny Allow from all </Directory> </VirtualHost>
edu.osgeo.conf
<VirtualHost 66.223.95.243:80> ServerName edu.osgeo.net DocumentRoot /var/www/moodle ErrorLog /var/log/httpd/osgeo-error_log CustomLog /var/log/httpd/osgeo-access_log common <Directory "/var/www/moodle"> Options Indexes FollowSymLinks AllowOverride all Order allow,deny Allow from all </Directory> </VirtualHost>
fdo-test.osgeo.conf
<VirtualHost 66.223.95.243:80> ServerName fdo-test.osgeo.net DocumentRoot /var/www/fdo ErrorLog /var/log/httpd/osgeo-error_log CustomLog /var/log/httpd/osgeo-access_log common <Directory "/var/www/fdo"> Options Indexes FollowSymLinks AllowOverride all Order allow,deny Allow from all </Directory> </VirtualHost>
mapbender.osgeo.conf
<VirtualHost 66.223.95.243:80> ServerName mapbender-test.osgeo.net DocumentRoot /var/www/mapbender ErrorLog /var/log/httpd/osgeo-error_log CustomLog /var/log/httpd/osgeo-access_log common <Directory "/var/www/mapbender"> Options Indexes FollowSymLinks AllowOverride all Order allow,deny Allow from all </Directory> </VirtualHost>
mapguide.osgeo.conf
<VirtualHost 66.223.95.243:80> ServerName mapguide-test.osgeo.net DocumentRoot /var/www/mapguide ErrorLog /var/log/httpd/osgeo-error_log CustomLog /var/log/httpd/osgeo-access_log common <Directory "/var/www/mapguide"> Options Indexes FollowSymLinks AllowOverride all Order allow,deny Allow from all </Directory> </VirtualHost>
SQL to disable all non-core modules
alter table system set status=0 where where name != 'aggregator' and name != 'block' and name != 'blog' and name != 'blogapi' and name != 'book' and name != 'comment' and name != 'contact' and name != 'drupal' and name != 'filter' and name != 'forum' and name != 'help' and name != 'legacy' and name != 'locale' and name != 'menu' and name != 'node' and name != 'path' and name != 'ping' and name != 'poll' and name != 'profile' and name != 'search' and name != 'statistics' and name != 'taxonomy' and name != 'throttle' and name != 'tracker' and name != 'upload' and name != 'user' and name != 'watchdog' and name != 'bluemarine';
SQL to set bluemarine as the default theme
alter table variable set value='s:10:"bluemarine";' where name='theme_default'; delete from cache;