Global navigation

   Documentation Center
   eZ Studio & eZ Platform
     User Manual
     Technical Manual
   eZ Publish 4.x / legacy

eZ Publish (5.x)

eZ Publish 5.x | For eZ Platform & eZ Studio topics see Technical manual and User manual, for eZ Publish 4.x and Legacy topics see eZ Publish legacy

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

eZ Publish Platform 5.3 and higher

This page only applies to eZ Publish Platform 5.3 and higher, for earlier versions of the Enterprise version of eZ Publish consult Service Portal user guide available for download at

Keeping your system up to date is important to make sure your system is running optimally and securely. The update system in eZ Publish Platform is using the de-facto standard PHP packaging systems called Composer for this.  This makes it easy to adapt updates to your workflow, allowing you to test updates in development environment, put the changes in your version control system (GIT, ...), pull in those changes on staging environment and when approved put it in production.

Prerequisite to using composer

Setting up Authentication tokens for access to commercial updates

Out of the box composer uses a packaging system called for all open source packages and their updates, in eZ Publish Platform additional commercial updates are available at (password protected, you'll need to setup authentication tokens to get access).

To get access to these updates go to your service portal on, your project will need to be configured for eZ Publish Platform 5.3 or higher and you will have access to the following on the "Maintenance and Support agreement details" screen:

  1. Click "Create token"
  2. Fill in a unique label describing the use of the token
    1. Example, if you need to provide access to updates to a third party a good to example would be "53-upgrade-project-by-partner-x", this will allow you to revoke access later.
  3. Copy the password, you will not get access to this again!
Optional: Save authentication token in auth.json to avoid repeatedly typing

To avoid having to always type your credentials, bunded with eZ Publish Platform is a composer extension which makes it possible to put this in a auth.json file.

Short: Add an auth.json file at your project root, aside composer.json, or in your COMPOSER_HOME directory for machine wide use, the file looks like the following:


Installing Composer

This step is only needed once per machine (per project by default, but globally on machine also possible), for how see:

Updating via composer

1. Running composer update and version changes

Updating eZ Publish Platform via composer is nothing different then updating other projects via composer, but for illustration here is how you update your project locally:

composer update

Tip: This will load in all updated packages, from eZ as well as third party libraries both used by eZ and others you may have added. So when updating like this it is recommended to take note of what was updated so you have an idea of what you should test before putting the updates into production.

When this has completed, make sure to version (assuming you use a version control system) changes done to "composer.lock" file, this is the file that contains all details of which versions are currently used and makes sure the e same version is used among all developers, staging and eventually production when current changes are approved for production (assuming you have a workflow for this).

Tip2: In large development teams make sure people don't blindly update and install third party components, this might easily lead to version conflicts on this file and can be tiring to fix-up if happening frequently. A workflow involving composer install and unit test execution on proposed changes can help avoid most of this, like available via Github/Bitbucket Pull Request workflow.

2. Installing versioned updates on other development machines and/or staging

Again, installing eZ Publish Platform packages via composer is nothing different then installing vanilla packages via composer, but for illustration here is how you install versioned updates:

composer install (package installation)

Tip: Here the importance of composer.lock comes in as this command will tell composer to install packages in exactly same version as defined in composer.lock. If you don't keep track of composer.lock it will instead just install always latests version of a package, hence not allow you to stage updates before moving it towards production.


That is it, for more specific instructions see release notes provided for all updates as they will suggest more specific ways to get the known eZ updates.

  • No labels