OXID eShop v6.0.0 Beta1: Installation

Getting Started

OXID eShop version 6.0.0 is the first OXID eShop installation based on Composer and Satis. In order to install the package you will need to:

  • Prepare your system to work with Composer
  • Install OXID eShop using Composer

Composer Integration

Composer is the de facto standard dependency manager for PHP project. OXID uses it to define relations between:

  • OXID eShop editions
  • OXID eShop and modules
  • OXID eShop and themes
  • 3rd party dependencies

You can find details how to install Composer here.

Satis

Satis is an Open Source static Composer repository generator. It might be used to create cache for better performance while accessing project source code or to control access to private repositories.

OXID uses Satis to control access to private GitHub repositories, like OXID eShop PE and OXID eShop EE.

What’s included in the Release?

The main goal for this beta release is to give our partners the possibility to adapt their modules to the next major version of the OXID eShop core. Therefore, the beta release includes the OXID eShop CE/PE/EE core, the Flow  and Azure Themes and the OXID Composer Plugin. Each of these is now a seperate component and the combination of them all is called the OXID eShop Compilation

Benefits of using Composer and Compilation

  • Each component might be replaced with another component easily
  • Each component might be updated separately
  • The Composer plugin allows control installation and update procedures
  • Modules and themes might be installed easily
  • The compilation holds all dependencies information in one place

How to

Install OXID eShop using Composer

The simplest way to install the OXID eShop is to run the composer command to create a project.

  • For Community Edition run:
  • For Professional Edition run:
  • For Enterprise Edition run:

Authentication

During the installation of the Professional Edition or Enterprise Edition, Composer will ask you to provide login credentials for the Satis repositories. You should have received these credentials from our Support team already.

By default, these credentials are stored in COMPOSER_HOME/auth.json (e. g. ~/.config/composer/auth.json on Ubuntu). If you plan to install multiple editions in parallel on the same machine (e. g. Professional and Enterprise Edition), then you might get the following error during the installation of the second edition:

In this case, just place a auth.json file besides the composer.json file of each project. Check out the authentication section of the Composer documentation for details.

Webserver Setup

The document root of your web server should point to the source/ subdirectory in your project directory.

File Permissions

  • These directories and their subdirectories must be writeable all the time:
    • ./source/out/pictures/ (including files, which are inside this directory)
    • ./source/out/media/
    • ./source/log/
    • ./source/tmp/

    During installation those must be writeable

    • ./source/config.inc.php
    • ./source/.htaccess

    After installation those must be read-only

    • ./source/config.inc.php
    • ./source/.htaccess

    and set the export dir to writeable

    • ./source/export
  • Open web server URL and go though setup steps.

How to add 3rd party dependency

Additional dependencies can be added via same composer.json file. For example, if there is a need to add runtime library like monolog run:

composer require monolog/monolog

If there is a need to add a development dependency like the OXID eShop testing library:

composer require --dev oxid-esales/testing-library

How to change versions of already existing components

The Metapackage of the V6 beta compilation specifies the exact dependencies with which the release was tested. Having the same versions of components in a project ensures that the OXID eShop always works as expected. However, sometimes one needs to change a dependency. To do that add an alias in the project composer file to the needed version as is shown in the following example:

This lowers doctrine cache package version to v1.6.0 even while metapackage require v1.6.1.

To read more check the documentation or this issue in GitHub


2 replies

Trackbacks & Pingbacks

  1. […] OXID eShop installation process has changed. Check out the installation procedure blog post for further […]

  2. […] OXID eShop V6.0.0 Beta1: Installation […]

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *