Issues migrating Plone 4.3.19 to Plone 5.0.x

I have not been able to migrate a 4.3.19 site to 5.0.x, although I have tried many permutations of steps, here is the clearest recipe I have used so far:

  1. Create vanilla 5.0.10 instance
    Under Site-Setup --> Add-ons, activate "Working Copy Support (Iterate)"
    All is well at this point. Stop the site

  2. In 4.3 instance,
    add-ons: activate working copy support (iterate)
    tried to upgrade via portal_setup/manage upgrades, but no option to upgrade there
    tried to reinstall via portal_quickinstaller, but still at 2.1.18, nothing higher
    manually upgraded to 3.1.1 (the highest version that seemed to work) by adding pin to buildout
    run buildout, restart site
    deactivate custom theme
    deactivate custom add-ons
    stop the site entirely

  3. Copy the entire 4.3 instance var directory to the 5.0 instance
    start the 5.0.10 site
    KeyError('Interface Products.CMFPlone.interfaces.controlpanel.ISecuritySchema defines a field enable_user_folders, for which there is no record.',)

    • Expression: "provider:plone.htmlhead"
    • Filename: ... egg/Products/CMFPlone/browser/templates/main_template.pt
    • Location: (line 25: col 36)

In the 4.3 instance, under @@security-controlpanel, "Enable User Folders" is NOT checked.

I am not finding a way past this error, what could be removed from 4.3 to make the migration work?

BTW, I have also tried a migration from the opposite direction (from within the 4.3 instance, change buildout.cfg to use extends = http://dist.plone.org/release/5.0.10/versions.cfg, re-run buildout, etc) and I hit the same error.

And when would I see a "migration" prompt, which I see other people talk about? Any suggestions appreciated.

You're "opposite direction" method would be the typical way to do this upgrade. After you change buildout to 5.0.10 and run it, when you go into the ZMI or visit /manage, you should see a message tell you that you need to run the migration. Is Working Copy (Iterate) the only add-on you are using on the 4.3 version of the site?

Thanks for your reply. Usually we do not use plone.app.iterate, but I was following a suggestion from Plone Migration 4.3.4 to 5.0 Errors
"you need to run a upgrade-step of plone.app.iterate (working copy support) while you are still in Plone 4".

We use a lot of 3rd party and custom plugins. So our approach became focused on weeding through those libraries, eliminating the ones that are not ready for Plone 5, as well as refactoring our own plugins to work under Plone5/Python3.

So now instead of running a migration, we are building a Plone 5.2 site from scratch, and will be importing data into it.

That suggestion for iterate was specific to that person's error, which is probably because they were actually using it (or had it installed at some point).

It sounds like you are on the right track, especially since you are upgrading from 4.x. A direct upgrade to 5.2 would not be recommended.