Skip to main content

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/zeopack to compact the database before upgrading.
  • Create a full backup of both filestorage/ and blobstorage/.
  • 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).

note

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.