Release Management
Release Procedure
The following steps must be followed when releasing a new version of the Drupal site code. If needed, the site can be made unavailable during this procedure via the admin maintenance setting in Drupal. Also, major releases may require a database backup to precede this procedure.
- Merge all the changes going into the release (see the source control procedure).
- Copy the web site subversion repository trunk directory to a release tag (e.g. tags/release_3.16).
- ssh into the webadmin@freestateproject.org account.
- Export the release into /var/www:
cd /var/www
svn export $FSVN/tags/release_3.16
mv release_3.16 www-r3.16
- Set the database password for the new release in www-r3.16/sites/www.freestateproject.org/settings.php, using the current password in the same location in the www-r3.15 folder.
- Move the site link over to the new release (it would be pointing at www-r3.15 when we start):
rm www.freestateproject.org; ln -s ./www-r3.16 ./www.freestateproject.org
- Test by reloading the front page. If a problem occurs, switch back to the previous version by:
rm www.freestateproject.org; ln -s ./www-r3.15 ./www.freestateproject.org
- The previous version should not be erased immediately, but kept around as a fall-back position. Older releases (e.g. 3.14 and older in our example), can be deleted at this point.
Submitted by liber_tas on July 28, 2007 - 10:41am.

