[triangle-zpug] Upgrading Plone...

Chris Calloway cbc at unc.edu
Fri Feb 2 20:20:58 CET 2007

Robert Geiger wrote:
> Plonista's...
> In my searches for information on upgrading 2.5 to 2.5.2, there seem to 
> be several approaches.
> Initially, I used the Unified installer on my Red Hat server to install 
> the whole zope/plone bundle at plone version 2.5
> I'd like to upgrade it because of some security updates, etc.
> Due to a required Zope upgrade, I'm wondering if the safest, most 
> conservative thing to do is to simply run the same Unified installer at 
> 2.5.2 level, and then just bring over the extra products and themes I 
> added in the 2.5 instance...
> OR...
> Upgrade Zope, then upgrade Plone separately as a Zope upgrade is 
> required going from plone 2.5 to 2.5.2.
> ** Concerns for me is that I've not any experience "upgrading" zope.  I 
> understand the Plone upgrade well enough.  But I really don't want to 
> accidentally bring my zope server down and not be able to get it back up 
> and running in a reasonable period of time.
> Opinions?  Recommendations?

First, let me start of by saying there are only a couple of plonista's 
on this list and the rest of us are plonawannabe's. We're bumbling along 
about like you are. So asking this on plone-users where the people who 
actually write the installers and migration code hang out might help you 
more. #plone IRC can help a lot more if it's the right time of day 
(think more Europe and less west coast) and you phrase things properly.

Next, never, ever, ever do an upgrade on your live site. Make an exact 
copy of your site in a test instance. Do your upgrade on your test 
instance. When you are fully confident it is upgraded correctly, then 
make the test instance your production instance. This goes for *any* 
live site, not just a plone or zope site. This goes for any live 
software, not just site software. Windows has most people thinking 
upgrading in place is a good idea. It's not.

Then, if you follow the above procedure, you can just copy your running 
site to a brand new test Zope instance of the version you want. In fact, 
you can just use the Universal installer to create that new instance 
(being careful to modify the installer's script to have an install 
location other than the same /opt/Plone2.5 you used last time), and then 
copy your plone products, extensions, and ZODB on over. Upgrading Zope 
almost always means creating a new Zope instance rather than writing 
over an old instance. Create a new instance and products, extensions, 
and database mounts over.

Fourth, looking at the Plone 2.5.0r3 installer, it looks like it uses 
Zope 2.9.4. The current Plone 2.5.2 installer users Zope 2.9.6. Looking 
at the change logs for Zope 2.9.6 and Zope 2.9.5, I can't see any 
security updates. It's usually not worth the effort to migrate for its 
own sake. If you are determined to have the latest and greatest version 
of everything, then migrating is all you'll ever be doing, because this 
stuff changes very quickly. If you have a useful setup, that's what's 

Fifth, when you migrate your *copied* instance, you first start zope, 
then go into the manage screens, then go into control panel, then into 
products, and see what products have a red exclamation point beside 
them. Go into those products and find their migration tabs. Run their 

When you migrate plone versions, go into the root of your portal in the 
ZMI and look for red exclamation points. Go into those products and find 
their migration tabs. Run their migrations. Run portal_migrations last.

When you start up your new Plone after migrating, log in to site setup, 
and go to add remove products. See which of your installed products has 
a "click on me" migration request and run them.

Finally: read the fine documention. People spent a lot of effort writing 
it. I think Alexander Limi and Martin Aspeli must write documentation 


When you're done with your migration, how about making a TriZPUG 
presentation on what you learned? :)

If you have questions, *try it*. All this stuff is free, as many 
instances as you want, and prototypable to your heart's delight. All 
best practices come from what people learn trying.


Chris Calloway
office: 332 Chapman Hall   phone: (919) 962-4323
mail: Campus Box #3300, UNC-CH, Chapel Hill, NC 27599

More information about the triangle-zpug mailing list