Search code examples
pythonplonezopezodb

Exporting data from a .fs file. Plone 3.3.5


I just got a task saying "See what you can do with this". I have a 24GB Plone 3.3.5 folder containing a Data.fs file. No idea what to do with it. No relevant results.

The Plone is 13 years old. Nothing works. Can't be installed on a modern machine. Docker only runs a Plone 6 installation. I manage to import the Data.fs via

docker cp Data.fs mycontainer:/plone/instance/var/filestorage/Data.fs

But ever since that - the plone container doesn't run. It exits with an error. I tried installing plone 3.3.5 - another error:

pip install Plone==3.3.5
Collecting Plone==3.3.5
  Using cached Plone-3.3.5.zip (1.6 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error
  
  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [3 lines of output]
      error in Plone setup command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers; Expected end or semicolon (after version specifier)
          plone.app.contentmenu >= 1.1.6dev-r22380
                                ~~~~~~~~~~~~^
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

etc. etc. etc. I had enough. Does anybody know of an application or some reasonable human way, as an executable program, a phpmyadmin alternative to ZODB, or anything at all, that can just export the data contained in this .fs file?


Solution

  • This is a vary old version of Plone. The best change you have is to use a virtual machine with an older OS, the best would be where you have older Python version installed. If i remember correctly, you will need Python 2.4 to run Plone 3. Use the unified installer https://launchpad.net/plone/3.3/3.3.6 to install Plone, i think you can also let it try to build the correct python version. It might work on systems where you don't have Python 2.4 anymore, but the best would be to pick an OS where you have it by default. The old installation docs are here. https://3.docs.plone.org/manage/installing/installation.html

    in general, yest it's a pain if you have to work with such old code and databases. But that's true for all software out there.

    When you have it running. You have some options:

    1. export some data via Webdav
    2. upgrade it to Plone 4 https://4.docs.plone.org/manage/upgrading/index.html

    From Plone 4 on, you can also use collective.exportimport to export all Data and settings as JSON and import it later in newer versions or use it to use it somewhere else.

    Also checkout the community forum, here you'll find the most info's and best answers to your questions. https://community.plone.org/