How to upgrade uStore using a staging server

Summary: This article explains how to upgrade uStore using a staging environment.

Overview

XMPie tries to minimize downtime and avoid any inconvenience to customers who want to upgrade the uStore software on a live production server with online stores. uStore versions are tested before they are officially released, nevertheless, uStore enables customers to customize and localize the software, which often includes site-specific development. Therefore, upgrading to a new uStore version may sometimes result in a store (or more) not to work as required. To avoid such issues, it is recommended that customers first validate the functionally of the new uStore version with its specific stores on a staging server, which must be similar to the production server environment.

This article describes how to safely upgrade your uStore system when you work with a staging environment.

Purpose of the uStore staging server

uStore upgrade procedure may affect a store or a number of stores depending on your system's customizations. Following is a list of uStore elements that can be customized and need to be checked before you go live with a new version of uStore:

  • Skin

  • Email message templates

  • Receipt setup

  • Custom solutions made by professional services or anyone else using uStore SDK or APIs.

Using a staging server enables you to safely test and make the necessary adjustments to your system prior to going live.

Important: uStore staging server should not be used for creating test products or stores. You cannot export the products to the uStore production server. For creating test products and stores, create a test store on the uStore production server. After you've tested the products, copy them to the relevant stores.

Setting up a uStore staging server

The staging server must be identical to the production server. The staging server must run on the same operating system version as the production server. Any software installed on the staging server must run the same version as the production server. Both servers must have the same configuration and include the same customizations, APIs and software patches.

The following procedure provides an overview of the main steps required for setting up the uStore staging server.

Prerequisite:

Before you set up the uStore staging server:

  • Prepare a dedicated server according to the uStore installation prerequisites.

  • Verify that the Microsoft Windows operating system running on the server is activated and genuine.

For more details, see the uStore Installation Guide.

Note: The staging server must include an independent SQL server database.

To set up the uStore staging server:

  1. Back up the uStore production server's database and restore it on the uStore staging server. Make sure that the XMPieUStore user is the owner of uStore database.

  2. On the uStore production server, locate the uStoreShared folder -- usually located at\\to the matching location on the uStore staging server.

  3. On the staging server, install the same version of Microsoft Office that is installed on the production server. You can download a trial version from Microsoft’s website. Note: After 28 days the Microsoft Office trial version will become obsolete.

  4. On the uStore staging server, install the same version of uStore that is installed on the uStore production server and connect the staging server with the uProduce production server.

  5. On the staging server, locate the uStore application folder --usually at X:\XMPie\uStore\App and back it up.

  6. On the production server, locate the uStore application folder -- usually at X:\XMPie\uStore\App and copy it to the staging server (overwrite the existing folder).

  7. Copy all the web.config files from the staging server backup, and overwrite them. These files are located under:

    • X:\XMPie\uStore\App\AdminApp

    • X:\XMPie\uStore\App\CustomerApp

    • X:\XMPie\uStore\App\API\uStoreWSAPI

    • X:\XMPie\uStore\App\Common\uStore.CommonControls

  8. If your stores use SSL, you need to enable SSL on the uStore staging server using a self-signed certificate. As an alternative, you can turn SSL off for your stores.

  9. Set the uStore staging server state to Staging as follows:

    • Open the uStore Back Office application.

    • Go to Presets > System Setup > Global Configurations.

    • Edit the StagingEnvironment parameter and change its value to true.

    • Go to Presets > System Setup > Mall.

    • Edit the record.

    • Change the value of uStore Server IP to the

  10. To refresh any cached content, restart Internet Information Services (IIS):

    • Open the Run dialog box. Keyboard shortcut: Press the Windows key+r.

    • In the Run dialog box, type iisreset.

Your staging server has now the same uStore system as the uStore production server.

Before you continue, perform some tests to verify that everything is working as expected.

Note: Unless you have a staging uProduce license and a staging uProduce server, you should connect uStore on the staging server to work with the uProduce production server. This means that all proof and production operations initiated by uStore on the uStore staging server will take place on the uProduce production server.

Upgrading uStore software on the uStore staging server

When a new version of uStore is available, install the new updates of uStore on the staging server. You can find the updates in Presets > XMPie Services.

After the installation procedure is successfully completed, you can start to test the new version of uStore to verify that it works appropriately.

Testing the new uStore version on the staging server

The following is a checklist that will help you verify that uStore functionality was not affected after upgrading to a new version of uStore.

While performing the tests, make sure that you keep record of any changes that you make. You will need to apply all the changes to the uStore production server afterwards.

Functionality

Task

Make sure that ...

Customized solutions

Check that any plug-ins or other functionality developed using XMPie APIs or SDKs function as expected.

You keep a record of all changes required.

Checkout process

  • Complete one order in every store.

  • After you complete the order, go to My Account>Order History and check the order receipt

  • The store looks as expected.

  • Notification emails are sent as expected.

  • Order receipts look as expected.

Store's appearance

Apply required changes to CSS files

You keep a record of all changes required.

Message templates

Edit email templates, if required.

You keep a record of all changes required.

Receipt Setup

Edit receipt templates, if required.

You keep a record of all changes required.

Store setup

Create a new store.

The store works as expected.

Product setup

Create a new product.

The product works as expected.

Reports

  • Run a predefined report.

  • Run a custom report.

The reports work as expected, especially if you have custom reports.

Queues and actions

Follow one of the existing orders through all the queues.

Order queues and actions work as expected, especially if you have custom queues or actions.

Triggers

Activate a couple of existing triggers.

The triggers work as expected.

Delivery setup

Order a product using one of the delivery methods.

Your delivery methods and setup work as expected.

Clearing services

Order a product using one do the clearing methods.

Existing clearing services work as expected, especially if you use any plug-ins or customized solutions.

Prepress workflow setup

Run a product through one of the existing prepress workflows.

The prepress workflow providers and workflows setup work as expected, especially if you use providers that are not available out-of-the-box.

Going live

After you have upgraded and tested the uStore system on the staging server, you are ready to upgrade the production server.

On uStore production server:

  1. Back up the uStore database.

  2. Back up the uStoreShared folder -- usually located at \\

  3. Back up the skin folders:

    \\<uStoreServer>\uStore\App\CustomerApp\Images

    \\<uStoreServer>\uStore\App\CustomerApp\App_Themes

  4. Upgrade the uStore software to the same version and build number as the ones installed on the staging server.

    To install the new updates, go to Presets > XMPie Services.

  5. Review the records taken when testing the uStore system on the staging server and apply the required settings and workarounds to the production server.

  6. If any changes were made to the CSS files, copy the skin folders from the staging server to the production server.

  7. To make sure that the production server was upgraded as required, complete at least one order in one of the existing stores.

Now you and your customers can benefit from the new features and improvements provided by the latest version of uStore.

 

Created by: Ben Pelkinson, updated by Mohammad Mansour on January 20, 2019