Global navigation

   Documentation Center
   eZ Studio & eZ Platform
     User Manual
     Technical Manual
     Glossary
   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

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

 

 

Info
titleeZ 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 support.ez.no. This page is also generic about using composer, for instructions specific to a release, see release notes.

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 package installs and updates to your workflow, allowing you to test new/updated packages 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.

 

Table of Contents

 

Warning
titleWarning: Known issue

Currently there is a issue with relying on composer.lock references to eZ packages, this is currently being fixed and is expected to be solved before end of June.

...

Code Block
titlecomposer install (package installation)
php -d memory_limit=-1 composer.phar require --prefer-dist ezsystems/ezfind-ls:5.3.*

 

 

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.

# Notes on using Composer with Legacy

(eZ Publish) Legacy by design places all important customizable folders within it's own structure. This is not ideal with composer as installation and updates might cause them to become as provided by packages again. To make sure you are safe from this, and to allow you to version these custom folders independently, it is recommended that you use symlinks and keep your custom settings, extensions and design outside of the ezpublish_legacy folder. To not have to manually deal with these symlinks it is recommended to use Composer post-install-cmd and post-update-command script commands to make this automated.

 

Below is a illustration on how this can be setup, see Composer documentation for further info.

Code Block
titleExample on composer.json symlinking
{
    "scripts": {
        "post-install-cmd": [
            "MyVendor\\MyClass::symlinkLegacyFolders"
        ],
        "post-update-cmd": [
            "MyVendor\\MyClass::symlinkLegacyFolders"
        ]
    }
}

Note: This functionality is desirable to have out of the box in the future, so community contributions on this topic is welcome to find a good standard convention and script to handle it.