ePages Patch Installation 6.13.2
Created: 6.12.2; Updated: 6.12.2

Table of Contents

1 Patch Installation Requirements

The patch 6.13.2 can only be applied to ePages 6.13.1.

Sybase ASE is no longer supported with ePages 6.13.2. You must migrate to MySQL before you can install the patch as described in Migrate Data from Sybase to MySQL.

If the ePages database server doesn't run, start it:

Windows
Start the database service: SYBSQL_DBServer (for Sybase) or MySQL.
Linux
Execute as root: /etc/init.d/epages6 start_db
Stop all non-ePages applications (e.g. editors) that access files in directory %EPAGES% (Linux: $EPAGES, see /etc/default/epages6).

Backup your data to be able to restore the initial state if the patch process fails or causes inconsistencies with customizations.

1.1 Linux: Patching by YUM Update

On Linux servers, the patch may be installed by a YUM update if ePages is installed on a single server (not distributed over several servers).

ePages Perl 5.12.3 must be installed (as described in section User Specific Configuration), before the patch installation by YUM update may be started.

If all conditions apply, ePages may be patched by executing following commands:

  yum update epages-patch --enablerepo epages-update

If you want to use language pack keys to update your language packs (see next section), execute for example (if you want to update Spanisch and Danish):

  EPAGES613_LANG_ES_KEY=<spanish key> EPAGES613_LANG_DA_KEY=<danish key> yum update epages-patch --enablerepo epages-update

1.2 Patches for Language Packs

If your ePages installation uses additionally language packs (beside English and German), you need the current versions of these language packs. You'll need either A) the language packs itself or B) the language pack keys with which you can update ePages inclusive your language packs. Your responsible sales account manager from ePages can provide you with both of them.

Choose one of the following methods:

1.2.1 A) Required: Language Packs

The patch requires all language packs starting from you initial version up to the target version for all installed languages (beside English and German).

If your initial version is e.g. 6.11.2, you need all language packs with version 6.11.3 and 6.12.0.

Before start patching you must put all required language packs in the same directory where the patch itself is stored (i.e. for example to /tmp, if the directory patch_6_13_2 is located in /tmp too).

1.2.2 B) Required: Language Pack Keys

You need for any installed language (beside English and German) its own language pack key. The language pack keys must be assigned at the Initial Preparation Step as make variables.

Example: If you use Spanish and Danish, set the make variables at the initial preparation step as follows (replace the values in brackets):

Windows:

  perl patch.pl prepare EPAGES613_LANG_ES_KEY=<spanish key> EPAGES613_LANG_DA_KEY=<danish key>

Linux:

  ./patch.sh prepare EPAGES613_LANG_ES_KEY=<spanish key> EPAGES613_LANG_DA_KEY=<danish key>

1.3 Logging the Patch Installation

Backup all log files from %EPAGES_LOG%\* (Linux: $EPAGES_LOG, see /etc/default/epages6) and delete these files in %EPAGES_LOG%.

2 Patch a Single Server ePages Installation

In Windows execute the following steps as Windows user Administrator or as a user with administrator permissions.

In Linux execute the following steps as Linux user root.

2.1 Preparations

The patch may install new features to default store and shop types, please check with licensekey@epages.com if your current license fits the new feature set.

2.1.1 Unpack the Package

Copy the file epages-6.13.2-patch.tar.gz into a local directory and unpack the patch:

Windows:

  cd /d c:\temp
  gzip -d epages-6.13.2-patch.tar.gz
  tar ixf epages-6.13.2-patch.tar
  cd patch_6_13_2

Linux:

  . /etc/default/epages6
  cd /tmp
  tar izxf epages-6.13.2-patch.tar.gz
  cd patch_6_13_2

2.1.2 User Specific Configuration

Check if all patch relevant variables in the configuration files in %EPAGES_CONFIG%\Database.d\*.conf (Linux: $EPAGES_CONFIG/Database.d/*.conf) have correct values. The variables are described in following documents:

2.2 Patch Installation

The patch can be installed in 2 steps:

prepare
Initial preparation step being executed while the store is online.
install
Patch installation being executed while the store is offline.
The first step (prepare) may be omitted, then it is executed automatically within the second step (install).

2.2.1 Initial Preparation Step

Run the following commands:

Windows:

  perl patch.pl prepare

Linux:

  . /etc/default/epages6
  ./patch.sh prepare

If errors occur, stop the patch process, check the log file and contact ePages support. The log files are located in:

Windows:

  %EPAGES_SHARED%\Patches\var-patch_6_13_2\logs\HOSTNAME\DATE-prepare.log

Linux:

  $EPAGES_SHARED/var-patch_6_13_2/logs/HOSTNAME/DATE-prepare.log

HOSTNAME is the name of the machine and DATE is the Date in the format YYYY-MMM-DD-HH.MM.SS (e.g. 2007-May-31-15.34.23).

2.2.2 Patch Execution

Run the following commands:

Windows:

  perl patch.pl install

Linux:

  . /etc/default/epages6
  ./patch.sh install

If errors occur, stop the patch process, check the log file and contact ePages support. The log files are located in:

Windows:

  %EPAGES_SHARED%\Patches\var-patch_6_13_2\logs\HOSTNAME\DATE-install.log

Linux:

  $EPAGES_SHARED/Patches/var-patch_6_13_2/logs/HOSTNAME/DATE-install.log

HOSTNAME is the name of the machine and DATE is the Date in the format YYYY-MMM-DD-HH.MM.SS (e.g. 2007-May-31-15.34.23).

3 Uninstall the Patch in a Single Server ePages Installation

In Windows execute the following step as Windows user Administrator or as user with administrator permissions.

In Linux execute the following step as Linux user root.

Uninstall the patch with following commands:

Windows:

  perl patch.pl restore

Linux:

  . /etc/default/epages6
  ./patch.sh restore

4 Patch a Distributed ePages Installation

A distributed ePages installation consists of multiple servers. Exactly one of them is the primary server (hereinafter called 'alpha server') and one or more secondary servers:

Alpha server
the primary server on which the ePages service is running. If the ePages service is running on multiple servers, choose exactly one of them as your alpha server.
Secondary server(s)
All other servers of your installation with ePages-Perl installed.
The patch is installed by executing following commands:

1. on alpha server (see section Initial Preparation on the Alpha Server):

   Windows:  perl patch.pl prepare
   Linux:    ./patch.sh prepare

2. on any secondary server (see section Install the Patch on Secondary Servers):

   Windows:  perl patch.pl preinstall
   Linux:    ./patch.sh preinstall

3. on alpha server (see section Install the Patch on the Alpha Server):

   Windows:  perl patch.pl install
   Linux:    ./patch.sh install

4. on any secondary server (see section Post-Installation on All Servers):

   Windows:  perl patch.pl postinstall
   Linux:    ./patch.sh postinstall

5. on alpha server (see section Post-Installation on All Servers):

   Windows:  perl patch.pl postinstall
   Linux:    ./patch.sh postinstall

The first step (prepare) consists of preparation tasks being executed while the store is online.

Other steps must be executed while the store is offline.

The first step (Initial Preparation on the Alpha Server) may be omitted, then it is executed automatically within the third step (Install the Patch on the Alpha Server).

4.1 Initial Preparation on the Alpha Server

On the alpha server run the initial preparation steps as described in sections Preparations and Initial Preparation Step.

4.2 Install the Patch on Secondary Servers

In Windows, execute the following steps as a user with administration permissions (Administrator or another user of local admin group on Windows systems).

In Linux execute the following steps as Linux user root.

1. First, prepare all secondary servers for patch installation as described in section Preparations.

On Linux, you may omit yum update epages-perl --enablerepo epages-update on all secondary servers if $EPAGES_PERL (eproot/Perl) is a shared directory, commonly used by all involved servers. Anyway, Scripts/rpmify-epages.sh must be executed on any secondary server.

2. Run on all secondary servers following commands:

Windows:

  perl patch.pl preinstall

Linux:

  . /etc/default/epages6
  ./patch.sh preinstall

If errors occur, stop the patch process, check the log file and contact ePages support. The log files are located in:

Windows:

  %EPAGES_SHARED%\Patches\var-patch_6_13_2\logs\HOSTNAME\DATE-preinstall.log

Linux:

  $EPAGES_SHARED/Patches/var-patch_6_13_2/logs/HOSTNAME/DATE-preinstall.log

HOSTNAME is the name of the machine and DATE is the date in the format YYYY-MMM-DD-HH.MM.SS (e.g. 2007-May-31-15.34.23).

4.3 Install the Patch on the Alpha Server

If you executed step Initial Preparation on the Alpha Server, now run the patch installation on the alpha server as described in section Patch Execution.

If you did not execute step Initial Preparation on the Alpha Server, run the patch installation on the alpha server as described in sections Preparations and Patch Installation.

4.4 Post-Installation on All Servers

In Windows, execute the following steps as a user with administration permissions (Administrator or another user of local admin group on Windows systems).

In Linux execute the following steps as Linux user root.

Run following commands first on the secondary servers, then on the alpha server:

Windows:

  perl patch.pl postinstall

Linux:

  . /etc/default/epages6
  ./patch.sh postinstall

If errors occur, stop the patch process, check the log file and contact ePages support. The log files are located in:

Windows:

  %EPAGES_SHARED%\Patches\var-patch_6_13_2\logs\HOSTNAME\DATE-postinstall.log

Linux:

  $EPAGES_SHARED/Patches/var-patch_6_13_2/logs/HOSTNAME/DATE-postinstall.log

HOSTNAME is the name of the machine and DATE is the date in the format YYYY-MMM-DD-HH.MM.SS (e.g. 2007-May-31-15.34.23).

5 Uninstall the Patch in a Distributed ePages Installation

In Windows execute the following step as Windows user Administrator or as user with administrator permissions.

In Linux execute the following step as Linux user root.

The patch is uninstalled by executing following commands:

1. on secondary servers (see section Uninstall the Patch on Secondary Servers):

   Windows:  perl patch.pl prerestore
   Linux:    ./patch.sh prerestore

2. on alpha server (see section Uninstall the Patch on the Alpha Server):

   Windows:  perl patch.pl restore
   Linux:    ./patch.sh restore

3. on secondary servers (see section Post-Uninstallation on Secondary Servers):

   Windows:  perl patch.pl postrestore
   Linux:    ./patch.sh postrestore

Each restore step rolls back the relevant step of the patch installation processes:

5.1 Uninstall the Patch on Secondary Servers

First, run following command on all secondary servers:

Windows:

  perl patch.pl prerestore

Linux:

  . /etc/default/epages6
  ./patch.sh prerestore

5.2 Uninstall the Patch on the Alpha Server

Then, run following command only on the alpha server:

Windows:

  perl patch.pl restore

Linux:

  . /etc/default/epages6
  ./patch.sh restore

5.3 Post-Uninstallation on Secondary Servers

Finally, run following command on all secondary servers:

Windows:

  perl patch.pl postrestore

Linux:

  . /etc/default/epages6
  ./patch.sh postrestore

6 Patch without Backup

If the EPAGES directory and/or the ePages databases are already backed up before starting the patch you may omit backups while patching. Then you are responsible for restoring the patch if something goes wrong.

If the EPAGES directory shall not backed up while patching add BACKUP_DIR= to the patch command.

If the ePages databases shall not backed up while patching add BACKUP_DB= to the patch command.

Examples:

Windows, no backup at all:

  perl patch.pl preinstall BACKUP_DIR= BACKUP_DB=
  perl patch.pl install BACKUP_DIR= BACKUP_DB=
  perl patch.pl postinstall BACKUP_DIR= BACKUP_DB=

Windows, no database backup:

  perl patch.pl preinstall BACKUP_DB=
  perl patch.pl install BACKUP_DB=
  perl patch.pl postinstall BACKUP_DB=

Linux, no backup at all:

  . /etc/default/epages6
  ./patch.sh preinstall BACKUP_DIR= BACKUP_DB=
  ./patch.sh install BACKUP_DIR= BACKUP_DB=
  ./patch.sh postinstall BACKUP_DIR= BACKUP_DB=

7 Final Tasks

7.1 Read Patch Logging

Verify the log files for errors in %EPAGES_LOG%\*, especially file error.log. In error.log ignore following warning:

  Can't connect to the MC at ..

The warning is written because the ePages service must not run while patch installation.

7.2 Cleanup Backups

Backup files are saved in following directories:

where VERSION is the ePages initial version before running the patch.

If you want to delete backup files created while patching, run the following command on any involved machine:

Windows:

  perl patch.pl del_backup_files

Linux:

  . /etc/default/epages6
  ./patch.sh del_backup_files

7.3 Check Shop Type Settings in BBO

New shops can be created with several basic settings and demo content. These data are provided in various XML files. Relevant XML files are assigned to different shop types in BBO and imported during shop creation.

With ePages version 6.12.0 the prepared XML files have been restructured. Basic settings and demo content are now stored in separate XML files.

The patch provides new XML files and replaces old files. Obsolete XML files are deleted.

The XML file assignment in the shop type definition in BBO will not be changed by the patch to preserve user defined assignments.

As a result it may happen that - after the patch installation - XML files are listed in the shop type definition which are no longer available. In such cases errors occur when creating shops.

Therefore check the settings of the input fields "Import files for new shops" and "Source directory for files of a new shop" in "BBO >> Shop types >> [shoptype] >> General" as follows after patch installation but before creating new shops:

  1. Remove names of XML files which are not listed in the XML file list "Selection".
  2. Enter names of the XML files which provide basic settings and demo content needed for shops of the relevant shop type.
Important: The creation of new shops is not possible without adjustment of names in the input fields.

Following main files are available:

Basic.xml
Basic settings for all shops and web sites
Translation.Basic.[xx].xml
Language specific content for Basic.xml
StarterContent.xml
Sample data for page content
Translation.StarterContent.[xx].xml
Language specific content for StarterContent.xml
DemoShop.xml
Demo content of former Milestones DemoShop
Translation.DemoShop.[xx].xml
Language specific content for DemoShop.xml
Country_[XX].xml
Language specific settings (e.g.: Country_DE.xml for Shops in Germany)
Following sections show you some e examples for input fields.

7.3.1 Example 1: Shop with new demo content for merchants in Germany

Field "Import files for new shops":

  Basic.xml,Translation.Basic.de.xml,Translation.Basic.en.xml,
  StarterContent.xml,Translation.StarterContent.de.xml,
  Translation.StarterContent.en.xml,Country_DE.xml

Field "Source directory for files of a new shop":

  $ENV{EPAGES_STORES}/Site/ShopPublicFiles/StarterShop

7.3.2 Example 2: Simple web site without demo content in UK

Field "Import files for new shops":

  Basic.xml,Translation.Basic.en.xml,Country_GB.xml

Field "Source directory for files of a new shop":

  Empty

7.3.3 Example 3: Milestones DemoShop for advanced presentation of shop features

Field "Import files for new shops":

  Basic.xml,Translation.Basic.de.xml,Translation.Basic.en.xml,DemoShop.xml,
  Translation.DemoShop.de.xml,Translation.DemoShop.en.xml,DownloadProduct.xml,
  Translation.DownloadProduct.de.xml,Translation.DownloadProduct.en.xml,
  Country_DE.xml

Field "Source directory for files of a new shop":

  $ENV{EPAGES_STORES}/Site/ShopPublicFiles/DemoShop

Note: If you customized the existing XML files you find a backup of your data in:

  %EPAGES_SHARED%\Patches\var-patch_6_13_2\backup\HOSTNAME\Shared\Stores\Site\ShopImport


Copyright ePages Software GmbH 2012