Message-ID: <1135420324.2790.1485850807393.JavaMail.confluence@ip-10-127-227-164> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_2789_487265362.1485850807393" ------=_Part_2789_487265362.1485850807393 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html Upgrading from 5.4.x and 2014.11 to 16.xx

Upgrading from 5.4.x and 2014.11 to 16.xx

=20
=20
=20
=20

Beta

Instructions and scripts provided here are open for testing and feedback= , and for eZ Enterprise users eZ will take care about bugs over support, ho= wever until 2017 when features like custom tags are in place, and community= provides feedback on how this works "in the wild", this will continue to b= e labeled as beta.

Topics you should be aware of when planning an upgrade:

  • Field Types refere= nce for overview of Field Types that exists and not on eZ Platform
  • RichText Field Type capabilities, currently not covering:
  • Symfony 2.8, this is also the case on later 5.4.x versions, but not the= first once including 2014.11
  • API changes, while we have a strict Backwards Compatibility focus, some= deprecated API features where removed, some changes where done to internal= parts of the system, and as planned eZ Publish legacy and legacy bridge wa= s removed. See ez= publish-kernel:doc/bc/changes-6.0.md


Instructions for upgrading from eZ Publish to eZ Platform and eZ Studio = is in preview starting release 16.02. The status of the upgrade is:

  • eZ Platform: XmlText to RichText migration: In Bet= a, and described below.
  • eZ Studio : Flow to Landing Page migration: Schedu= led for beta version with 16.04.

 

If you are migrating from a legacy eZ Publish version, this page contain= s the information you need. However, first have a look at an overview of th= e process in Migra= tion from eZ Publish.

This section describes how to upgrade your existing  eZ Publish= Platform  5.4/2014.11 installation to eZ Platform and eZ Studio.= Make sure that you have a working backup of the site before you do = the actual upgrade, and that the installation you are performing the upgrad= e on is offline.

Note on Paths
  • <old-ez-root>/: The root directory where the 5.4/2014.11= installation is located in, for example: "/home/myuser/old_www/" = or "/var/sites/ezp/"
  • <new-ez-root>/: The root directory where the installatio= n is located in, for example: "/home/myuser/new_www/" or "/var= /sites/[ezplatform|ezstudio]/"

Check f= or requirements

  • Information regarding system requirements can be found on the  Requirements documentation pa= ge; notable changes include:
    • PHP 5.5.9 or higher
    • MySQL or MariaDB 5.5 or higher
    • Browser from 2015 or newer for use with backend UI
  • This page assumes you have composer installed on the machine and that i= t is a somewhat recent version. See Using Composer.

Upgrade steps

Step 1: Extract latest eZ Platform/Studio 16.02= .x installation

The easiest way to upgrade the distribution files is to extract a clean = installation of eZ Platform / eZ Studio to a separate directory.

= Step 2: Move over code and config

2.1. Code

If you have code in src folder, move that over:

  • <old-ez-root>/= src =3D> <ne= w-ez-root>/src
2.2. Composer
2.2.1 Move over own packages

Assuming you have own composer packages (libraries and bundles, but not eZ Publish legacy packages), e= xecute commands like below to add them to new install in <new-ez-root>= ;:

composer <= /code>require --no-update "vendor/package:~1.= 3.0"

Adapt the command with your&= nbsp;vendor, package, version number, and add&nbs= p;"=E2=80=93dev" if a given package is for dev use. Also check= if there are other changes in composer.json you should move o= ver.

2.2.2 Temporarily install XmlText Field Type

While no longer bundled, the XmlText= Field Type exists and is needed to perform migration from eZ Publish's Xml= Text to the new docbook-based format used by RichText Field Type. From <= new-ez-root> execute:

composer <= /code>require --no-update --dev "ezsystems/ezplatform-xmltext-fiel= dtype:^1.1.0"

2.3. Config

To move over your own custom configurations, follow the conventions belo= w and manually move the settings over:

  • <old-ez-roo= t>/ezpublish/config/parameters.yml =3D>&= nbsp;<new-ez-root>/= app/config/parameters.yml
    • For parameters like before= , for new parameters you'll be prompted on later step.
  • <old-ez-root>/= ezpublish/config/config.yml     =3D&= gt; <new-ez-root>/<= /span>app/config/config.yml
    • For system/framework confi= g, and for defining global db, cache, search settings.
  • <old-ez-root>/= ezpublish/config/ezpublish.yml  =3D> <= span style=3D"color: rgb(128,128,128);"><new-ez-root>/app/config/ezplatform.yml
    • For site access, site grou= ps and repository settings.

Changes to repository configuration

When moving configuration over, be aware that as of 5.4.5 a= nd higher, repository configuration has been enhanced to allow configuring = storage engine and search engine independently.


Default ezplatform.yml repositories configuration with comments
=20
ezpublish:
    # Repositories configuration, setup default repository to support solr =
if enabled
    repositories:
        default:
            # For storage engine use kernel default (current LegacyStorageE=
ngine)
            storage: ~
            # For search engine, pick the one configured in parameters.yml,=
 either "legacy" or "solr"
            # see SolrBundle for further info: https://doc.ez.no/display/TE=
CHDOC/Solr+Bundle
            search:
                engine: %search_engine%
                connection: default
=20

Make sure to adapt siteaccess names

In the default configurations in ezplatform= .yml you'll find existing siteaccesses like site,= and depending on installation perhaps a few others, all under site group <= strong>site_group. Make sure to change those to what you had in ezpublish.yml to avoid issues with having to login to your w= ebsite, given user/login policy rules will need to be updated if you change= names of siteaccess as part of the upgrade.

2.4. Bundles

Move over registration of bundles you have from src and from composer pa= ckages, from old to new kernel:

  • <old-ez-root&g= t;/ezpublish/EzPublishKernel.php =3D> <new-ez-root>/app/AppKernel.php

2.5 Binar= y files

Binary files can simply be copied from the old to the new installation:<= /p>

  • <old-ez-roo= t>/web/var[/<site_name>]/storage =3D= > <new-ez-root>/= web/var[/<site_name>]/storage

In the eZ Publish Platform 5.x install web/var is a symlink= to ezpublish_legacy/var, so if you can't find it in path abov= e you can instead copy the storage files from the similar ezpublish_l= egacy path.

2.6 Re-apply permissions and update composer

Since writable directories and files have been replaced / copied, = their permissions might have changed. Re-apply permissions as explained in = the installation instructions. TODO: LINK

When that is done, execute the following to update and install all packa= ges from within <new-ez-root>*:

composer update --= prefer-dist

At the end of the process, you will be asked for values for parameters.yml = not already moved from old installation, or new=20 (as defined in parameters.yml.dist).
2.7 Register EzSystemsEzPlatformXmlTextFieldT= ypeBundle

Add the following new bundle to your new kernel file, <new-ez-root>/app/AppKernel.php:

new EzSystems\EzPlatformXmlTextFiel= dTypeBundle\EzSystemsEzPlatformXmlTextFieldTypeBundle(), 

Ste= p 3: Upgrade the database

3.1. Ex= ecute update SQL

Import to your database the changes provided in one of the follow= ing files, optionally read inline comments as you might not need to run som= e cleanup queries:

MySQL: <new-ez-root>/vendor/ezsystems/ezpublish-kernel/d= ata/update/mysql/dbupdate-6.1.0-to-6.2.0.sql

Postgres: <new-ez-root>/vendor/ezsystems/ezpublish= -kernel/data/update/postgres/dbupdate-6.1.0-to-6.2.0.sql


3.2. Execute XmlText Migration script

For migrating content from the XmlText format to the new RichText format= , a migration script exists, execute the following from <new-ez-root>= :

php app/console ezxmltext:convert-t= o-richtext -v

The migration script is currently in beta, which is why command example = is suggested with verbose flag. Feedback on how it works and on how we can = improve it is welcome on the repository= .

3.3. Migrate Page field to Landing Page (eZ Studio only= )

If you have Page field (ezflow) content and an eZ Enterprise subscriptio= n, you can use a script to migrate your Page content to eZ Studio Landing P= age. See Migrating legacy Page field (ezflow) to Landing Page (En= terprise) for more information.

Step 4: Re-configure web server & proxy

Varnish (optional)

If you use Varnish, the recommended Varnish (3 and 4) VCL configuration = can be found in the doc/varnish folder. See also the=  Using Varnish page.

Web s= erver configuration

The officially recommended virtual configuration is now shipped in the&n= bsp;doc folder, for both apache2 (doc/apache2) and nginx (doc/nginx). Both are built to be easy to un= derstand and use, but aren't meant as drop-in replacements for your existin= g configuration.

As was the case starting 5.4, one notable change is that SetE= nvIf is now used to dynamically change rewrite rules depending = on the Symfony environment. It is currently used for the assetic production= rewrite rules.

Step 5: Lin= k assets

Assets from the various bundles need to be made available for the webser= ver through the web/ document root, execute the following commands from <= ;new-ez-root>:

=20
php app/console assets:install --env=3Dprod --symlink
php app/console assetic:dump --env=3Dprod
=20

 


=20
=20
=20
=20

 

=20
=20
=20
------=_Part_2789_487265362.1485850807393--