CMFDefault 2.2.0-beta ships with several upgrade steps. The goal is to
make migrating old CMF sites easier without using write-on-read
migration code or special migration scripts.
This is how the upgrade steps can be used:
1.) Make a backup of your site. Update Zope and CMF to the latest
version and restart Zope.
2.) In the ZMI, go to the 'upgrades' tab of portal_setup and select the
profile ('Products.CMFDefault:default' in CMF).
3.) Older CMF versions didn't set the profile version of the site, so
the tab says "The profile 'Products.CMFDefault:default' is currently
upgraded to version unknown." If you did create the site in CMF 2.1 all
'2.0 -> 2.1' steps should be marked as done and it should be save to run
"Mark 2.1 upgrade as finished". After that the tab says "The profile
'Products.CMFDefault:default' is currently upgraded to version 2.1." and
shows only '2.1 -> 2.2' steps.
4.) You can now run the '2.1 -> 2.2' steps and test your site. Some
additional manual upgrade steps might be necessary.
5.) If you are done with the upgrade of your site, run "Mark 2.2 upgrade
as finished". Now the filesystem version and the profile version of the
site are the same. No upgrade steps are shown.
6.) If something did go wrong or if you already upgraded to an alpha
version of CMFDefault 2.2, you can show th old upgrade steps using the
'Show' button. If one of those steps is not marked as done, it might be
necessary to (re-)run that step.
This is just the first cut. Several improvements are possible:
- Real world testing: If people report difficulties, the upgrade steps
can be improved based on the feedback.
- Unit testing: The steps currently have no tests. In theory a site
created in CMF 2.1 and migrated to CMF 2.2 should produce exactly the
same snapshot as a new CMF 2.2 site. Maybe someone can write a test for
- The MetadataTool has write-on-read migration code in _get_DCMI. That
should be converted into two migration steps: One from CMF 1.6 to CMF
2.0 and one from 2.1 to 2.2.
- The upgrade scripts in CMFCore/Extensions and CMFDefault/Extensions
should be converted to upgrade steps.
- An upgrade step for adding the new singlestate_workflow should be written.
Zope-CMF maillist - Zope-CMF@zope.org
See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests