Message-ID: <393077808.3266.1485852553861.JavaMail.confluence@ip-10-127-227-164> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_3265_1730849935.1485852553861" ------=_Part_3265_1730849935.1485852553861 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

Beta

Instructions and scripts used here are provided as a preview and is curr= ently undergoing internal and community testing, comments and suggestions w= elcome.


=20

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 Migrati= on 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

Check f= or requirements

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:

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 =  vendor, package, version number, and add&nb= sp;"=E2=80=93dev" if a given package is for dev use. Also chec= k if there are other changes in composer.json you should move = over.

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-fi= eldtype:^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-= root>/ ezpublish/config/parameters.yml =3D= >  <new-ez-root>= / app/config/parameters.yml
    • For parameters like befor= e, for new parameters you'll be prompted on later step.
  • <old-ez-root>= ;/ ezpublish/config/config.yml     = =3D> <new-ez-root>/<= /em> app/config/config.yml
    • For system/framework conf= ig, and for defining global db, cache, search settings.
  • <old-ez-root>= ;/ ezpublish/config/ezpublish.yml  =3D&g= t; <new-ez-root>/ = app/config/ezplatform.yml
    • For site access, site gro= ups 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= >/ ezpublish/EzPublishKernel.php =3D>  <new-ez-root>/ app/AppKernel.php

2.5 Binary fi= les

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

  • <old-ez-= root>/ web/var[/<site_name>]/storage  =3D>  <new-ez-roo= t>/ 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/ezpublis= h-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 eZ St= udio Landing Page 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 pag= e.

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

 


------=_Part_3265_1730849935.1485852553861--