Difference between revisions of "Drupal Upgrade Plan 2008"
Jump to navigation
Jump to search
(24 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
Upgrading the OSGeo Drupal CMS is a complicated task further complicated by the use of multi-site configuration. To upgrade from current 4.7.x to the newest 5.3 version the following steps should be taken (doubles as a check list): | Upgrading the OSGeo Drupal CMS is a complicated task further complicated by the use of multi-site configuration. To upgrade from current 4.7.x to the newest 5.3 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 = | = Preliminary tasks = | ||
Line 10: | Line 13: | ||
== osgeo1 server tasks == | == osgeo1 server tasks == | ||
− | |||
== osgeo2 server tasks == | == osgeo2 server tasks == | ||
+ | |||
+ | '''All Done!''' | ||
+ | |||
# download Drupal 4.7.8 | # download Drupal 4.7.8 | ||
# Download Drupal 5.3 and modules: | # Download Drupal 5.3 and modules: | ||
− | |||
− | |||
#* captcha | #* captcha | ||
#* content (CCK) | #* content (CCK) | ||
#** date | #** date | ||
#** imagefield | #** imagefield | ||
− | #** number | + | #** number (comes with CCK) |
− | #** link | + | #** link (comes with CCK) |
− | #** optionwidgets | + | #** optionwidgets (comes with CCK) |
− | #** text | + | #** text (comes with CCK) |
#* diff | #* diff | ||
#* event | #* event | ||
+ | #** basicevent | ||
#* feedback | #* feedback | ||
− | |||
#* image | #* image | ||
− | #** image_gallery | + | #** image_gallery (part of image) |
#* insert_block | #* insert_block | ||
− | #* ldapauth | + | #* LDAP Integration consists of: |
+ | #** ldapauth | ||
#** ldapdata | #** ldapdata | ||
#** ldapgroups | #** ldapgroups | ||
Line 43: | Line 47: | ||
#*** localizeruser | #*** localizeruser | ||
#*** localizerviews | #*** localizerviews | ||
− | |||
− | |||
− | |||
#* path_image | #* path_image | ||
#* pearwiki_filter | #* pearwiki_filter | ||
− | |||
#* recent_changes | #* recent_changes | ||
− | |||
− | |||
− | |||
#* syndication | #* syndication | ||
− | |||
#* tinymce | #* tinymce | ||
#** imce | #** imce | ||
− | |||
#* views | #* views | ||
#** views_rss | #** views_rss | ||
#** views_theme_wizard | #** views_theme_wizard | ||
#** views_ui | #** 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 | # create new directory structure | ||
#* /var/www/drupal-5.3 (extracted from the tarball) | #* /var/www/drupal-5.3 (extracted from the tarball) | ||
Line 71: | Line 70: | ||
#* /var/www/mapguide | #* /var/www/mapguide | ||
#* /var/www/mapbender | #* /var/www/mapbender | ||
− | + | ||
= Actual Upgrade sequence = | = 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 | ||
+ | #* http://osgeo.org/ | ||
+ | #* http://fdo.osgeo.org/ | ||
+ | #* http://mapguide.osgeo.org/ | ||
+ | #* http://mapbender.osgeo.org/ | ||
− | + | == osgeo2 == | |
− | |||
# Extract osgeo1 files to /var/www/drupal | # Extract osgeo1 files to /var/www/drupal | ||
# Create a new databases for the sites | # Create a new databases for the sites | ||
Line 127: | Line 132: | ||
# enable the osgeo theme on mapbender | # enable the osgeo theme on mapbender | ||
# dump databases and tar files and move the new site over to osgeo1 | # dump databases and tar files and move the new site over to osgeo1 | ||
+ | |||
+ | |||
+ | == osgeo1 == | ||
# load the new site files and databases | # load the new site files and databases | ||
# edit apache config files to point to new sites. | # 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 == | == dev.osgeo.conf == | ||
Line 167: | Line 180: | ||
<pre> | <pre> | ||
<VirtualHost 66.223.95.243:80> | <VirtualHost 66.223.95.243:80> | ||
− | ServerName | + | ServerName fdo-test.osgeo.net |
DocumentRoot /var/www/fdo | DocumentRoot /var/www/fdo | ||
ErrorLog /var/log/httpd/osgeo-error_log | ErrorLog /var/log/httpd/osgeo-error_log | ||
Line 179: | Line 192: | ||
</VirtualHost> | </VirtualHost> | ||
</pre> | </pre> | ||
− | |||
== mapbender.osgeo.conf == | == mapbender.osgeo.conf == | ||
Line 216: | Line 228: | ||
<pre> | <pre> | ||
alter table system set status=0 where where name != 'aggregator' and | alter table system set status=0 where where name != 'aggregator' and | ||
− | name != 'block' and name != 'blog' | + | name != 'block' and name != 'blog' and name != 'blogapi' and |
name != 'book' and name != 'comment' and name != 'contact' and | name != 'book' and name != 'comment' and name != 'contact' and | ||
name != 'drupal' and name != 'filter' and name != 'forum' and | name != 'drupal' and name != 'filter' and name != 'forum' and | ||
Line 230: | Line 242: | ||
<pre> | <pre> | ||
alter table variable set value='s:10:"bluemarine";' where name='theme_default'; | alter table variable set value='s:10:"bluemarine";' where name='theme_default'; | ||
+ | delete from cache; | ||
</pre> | </pre> | ||
+ | |||
+ | [[Category:Web Site Committee]] | ||
+ | [[Category:Drupal]] |
Latest revision as of 01:12, 9 February 2017
Upgrading the OSGeo Drupal CMS is a complicated task further complicated by the use of multi-site configuration. To upgrade from current 4.7.x to the newest 5.3 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
- create entry CNAME dev.osgeo.net test.osgeo.net.
- create entry CNAME edu.osgeo.net test.osgeo.net.
- create entry CNAME fdo-test.osgeo.net test.osgeo.net.
- create entry CNAME mapbender-test.osgeo.net test.osgeo.net.
- create entry CNAME mapguide-test.osgeo.net test.osgeo.net.
osgeo1 server tasks
osgeo2 server tasks
All Done!
- 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;