best practice for eZ Publish upgrade when using SVN

Author Message

Greg McAvoy-Jensen

Friday 12 September 2008 8:54:23 pm

If one is using Subversion to deploy to the testing/staging server and production server (as well as development machines), what is the best step-by-step process for upgrading eZ Publish? Assume we're using the directory structure of the "myproject" example in Jérôme Renard's article (http://ez.no/developer/articles/using_subversion_with_ez_publish/common_problems_and_solutions) (but without having the database under version control).

My initial thought would be:

1. Backup.
2. Create a fresh installation of the new eZ Publish version in a directory called ezpublish-x.y.z.
3. Copy site-specific to new installation.
4. svn import ezpublish-x.y.z svn://example.com/path-to-repository/trunk/ezpublish-x.y.z.
5. Each developer can then svn checkout the new version, point it at their database, run the database upgrade script, and point Apache to new the new directory.
6. svn copy svn://example.com/path-to-repository/trunk/ezpublish-x.y.z svn://example.com/path-to-repository/branches/testing/ezpublish-x.y.z.
7. On the testing server, svn checkout the new version, point it at the testing database, lock down the database, copy over the old var directory (and needed ini files), run the database upgrade script, point Apache to the new directory, and unlock the database.
8. On the production server, svn checkout the new version, point it at the testing database, lock down the database, copy over the old var directory (and needed ini files), run the database upgrade script, point Apache to the new directory, and unlock the database.

Is this the most efficient way to handle it? What improvements could be made? On a live server where one does not have root access and relies on the host system administrators to point Apache to the new directory, is it best to have a sym link (link www to ezpublish-x.y.z) so we can re-point it ourselves (assuming following sym links is allowed)?

Thank you for your input.

Granite Horizon, Certified Developer of eZ Publish Web Solutions
Provider of the SaaS Solution Granite Horizon In The Cloud | http://granitehorizon.com/cloud
http://granitehorizon.com | +1 916 647 6350 | California USA | @granitegreg
Blog: http://granitehorizon.com/blog

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.