Upgrading SENAITE
SENAITE follows a regular release cycle. Each new version may include data migration steps that must be executed after updating the software packages. This guide covers the full upgrade procedure.
Before You Upgrade
Read the release notes before upgrading:
If you maintain a custom add-on, review the senaite.core changelog
carefully for API changes.
Strongly recommended steps before proceeding:
- Test the upgrade on a clone of your production environment first.
- Run
bin/zeopackto compact the database before upgrading. - Create a full backup of both
filestorage/andblobstorage/. - Bring as many analyses as possible to a verified or published state.
- Stop any background services that consume significant memory.
- Clear the Zope log file so the upgrade log is easy to read.
Step 1: Update the Version Pin
Open your buildout.cfg and update the senaite.lims version pin in the
[versions] section:
[versions]
senaite.lims = 2.x.x # replace with the target version
Check the PyPI history for the latest stable release.
Step 2: Re-run Buildout
buildout -c buildout.cfg
Buildout downloads the updated packages. If you use a custom buildout
configuration, replace buildout.cfg with the appropriate file name.
Step 3: Start SENAITE in Foreground Mode
Always run the upgrade in foreground mode so that errors are visible immediately:
bin/instance fg
Wait for the ready message:
INFO Zope Ready to handle requests
Step 4: Run the Upgrade Steps
Open a browser and navigate to the portal setup upgrade page:
http://localhost:8080/senaite/portal_setup/manage_upgrades
Select the senaite.core profile from the dropdown and click Upgrade.
Repeat for any other profiles that show pending upgrades (for example,
senaite.impress, senaite.app.listing, or custom add-on profiles).
If no upgrade step appears, the profile may already be at the latest version. Use the second dropdown and click Show old upgrades to verify.
Step 5: Verify Installed Versions
After the upgrade steps complete, check the installed versions in the add-ons control panel:
http://localhost:8080/senaite/prefs_install_products_form
The version shown for each package should match the pins in your
buildout.cfg.
Step 6: Restart in Production Mode
Once you have verified the upgrade on a test system, repeat the process on production and restart the server in background mode:
bin/instance stop
bin/instance start
ZEO Setups
If you run a ZEO cluster, stop all clients before upgrading and run the upgrade steps with a single reserved client in foreground mode:
bin/client_reserved fg
Restart the remaining clients only after the upgrade steps have completed successfully.
Professional Upgrade Support
Upgrades across major versions or on systems with custom add-ons require careful planning. Professional service providers offer paid upgrade support including pre-upgrade assessment, migration testing and post-upgrade validation.
See the Enterprise Solutions page for details.