Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,090 of 9,090 pages
About the help in other languages
All help pages

Updates and upgrade paths for bundled installations

How bundled installations get new Exponential releases - the two halves of every update (code and database), the update routes (new image, package manager, Git and Composer, the administration's Git Manager and…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/bundlers/updates-and-upgrade-paths.md

On this page

Updates and upgrade paths for bundled installations

This page is for bundlers who must keep the installations made from their bundle current. Decide the update path before the first release: recipients will ask how to update on the first day a fix is published.

Contents

  1. Two halves of every update
  2. Update routes by kind of bundle
  3. The routine on an installation
  4. Who does what
  5. Security releases
  6. Announcing updates

Two halves of every update

  1. The code: the kernel and the extensions, from a new tag and a new lock file.
  2. The database: the release's update file and scripts. For the 6.0 line the file is update/database/<engine>/6.0/dbupdate-6.0.0-6.0.15.sql, for MySQL, PostgreSQL and SQLite; "Apply it once, whole, in order" (11.6 Step 2). Releases can add scripts too, such as php update/common/scripts/6.0/createaudittables.php for the audit index.

"Moving the code is only half of an upgrade: the database update files of chapter 11 are the other half" (3.2 A). Then read "the checklist of each period you pass" (11.6).

Update routes by kind of bundle

BundleCode routeDatabase route
Container imagea new image; the volumes keep var/ and settingsa one-off job with the new image, before the new containers take traffic
Server image, applianceyour update channel, or Git and Composer on the boxthe same channel, as a separate, logged step
Panel installerthe panel's update button, or the customer's Git and Composerthe customer or the panel, with the instructions linked
Distribution packagethe package managerthe administrator, following the notice your package prints (Linux distribution packaging)
Starter kit projectGit and Composer in the project (Update with Git)the project team

The routine on an installation

Update with Git gives seven steps for the command line and the administration:

StepWhat
1Back up, start the maintenance window (php bin/php/maintenance.php on)
2See what is waiting
3Update the kernel with Git
4Update the extensions with Composer
5Check files and database, apply the database update
6Clear the caches, reload the code (exp:velocity deploy on a Velocity site)
7Check the site, leave the window (php bin/php/maintenance.php off)

In the administration, Git Manager pulls a branch and Setup > Updates and packages (ezupdate) runs Composer; "a release tag, a merge conflict and the Velocity restart still need the command line". ezupdate's updating is "Off until [UpdateSettings] AllowUpdate is switched on" (Automated updates with ezupdate).

For live sites follow "only finished, tested versions": "the newest release tag" (Choose how closely you follow).

Who does what

Write it into your terms and your getting-started text:

We deliver:        new bundle releases within <time> of an Exponential release
We test:           <databases, PHP versions, upgrade from the last <n> bundle versions>
The recipient does: backups before updating; applying the update; their own extensions
Database updates:  <who runs them, how>
End of updates:    <date or policy per bundle version>

Security releases

  • "Security fixes are made on the main branch (the 6.0.15 line, dev-main) and published with the next 6.0.x release. A published tag is never changed" (SECURITY.md).
  • Watch the releases on https://github.com/se7enxweb/exponential/releases and the project's channels; partners receive information through the partner program (Keeping customer sites current).
  • Release a bundle update promptly, and say in its notes which security release it carries.

Announcing updates

  • A changelog per bundle release, naming the Exponential version inside.
  • The database steps, explicitly, even when there are none.
  • A note when a previous bundle release was wrong, instead of changing it (Versions, tags and pinning).

Become an Exponential Partner

Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x