HomeGuidesRecipesAPI
HomeGuidesAPILog In

Upgrading

This article guides you through the process of upgrading an existing SmartIQ environment to a later version.

🚧

Production Upgrade

It is recommended to test the upgrade in a lower level environment (dev or test) prior to attempting a production upgrade.

❗️

After upgrade always check the upgrade log

After an upgrade is complete you must check the upgrade log table in the database. This table is called DBUpgradeLog. If any errors are detected in this table the uprgrade needs to be rolled back and tried again. Attempting to proceed with a version that did not upgrade successfully will cause issues with the product and may prevent future upgrades.

Upgrade Checklist

Below is a checklist to help prepare for upgrading SmartIQ.

📘

Develop an upgrade plan for your environment that is more specific to your needs. It is recommended that you review these items carefully to ensure you have everything in place and that the target environment is prepared according to the system requirements and recommendations.

Determine the target environment type

  • Development
  • Testing
  • Staging
  • Production
  • Other (e.g. Demo or PoC)

Server Access

  • Ensure you have full administrator access to all IIS web servers and SQL Server database servers (access the server either physically or remotely, e.g. permission to allow Remote Desktop access.)
  • Ensure you can access all SmartIQ installation media from the target servers. This may require access to an external drive, optical disc, website or FTP server, depending on where the installation media is available.
  • If applicable, confirm that any security procedures are followed to ensure there is no possible breach in gaining access to the target environment.

Before Upgrading

  • In some cases, a downtime should be planned and communicated with your users.
  • Ensure you have SmartIQUpgrade-version-.exe. e.g SmartIQUpgrade1X.X.XX.0.exe will upgrade SmartIQ to the latest version.
  • Take note of SmartIQApp Files exact path, web server and database server names. You will need these during the installation.
  • If Custom Development like connectors or custom solutions are already installed.
  • Ensure you have the installation media, project documentation and/or check web.config for the presence of custom components.
  • Each custom component will need to be recompiled and tested against the intended target SmartIQ version.
  • If your solution has a Custom Theme, make sure this is tested against target version of SmartIQ. The Custom Themes IIS virtual directory path is installed in (Produce/App_Themes) and the physical directory now includes an additional ‘wwwroot’ subdirectory (d:\inetpub\wwwroot\IQ13\Produce\wwwroot\App_Themes).
  • Make sure you have a valid SmartIQ license to be applied. If you are upgrading from a version previous to v12, a temporary license file should be provided as part of the upgrade package. Then a complete license file will be provided using your Tenancy Key.
  • Microsoft .Net Core 3.1 Hosting Bundle is required and should be present on any IIS host machine running SmartIQ the latest version.
    This bundle includes both the Core IIS Module and the Core Runtime used by Manage and Produce. See https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/iis for more information and to download the bundle.

Upgrade Process

Upgrade and Configuration

  • Perform a full backup of your App Files
  • Perform a full backup of the SmartIQ Database
  • Run Upgrade package on the IIS Web Server. Make sure you select the correct "Destination Folder" before clicking the Upgrade button.
  • For upgrading from versions previous to 12, ensure that the Produce and Manage applications have separate application pools, the .NET CLR version is set to No Managed Code and the Managed pipeline mode is set to Integrated. Refer to the installation guide for more information.
  • Access SmartIQ Manage. All data such as projects and users from the existing version of SmartIQ will be available in the upgraded version.
  • For situations where SmartIQ Produce is presented via another website as an iframe, modify the X-Frame-Options in the Produce appsettings.json file. This behavior is blocked by default.
  • Place ecosystem connector files to be deployed to SmartIQv13 in the root folders of Manage or Produce, similar to installation of custom extension files in Scheduler.
  • Check the appsettings.json configuration files for Manage, Produce and Scheduler apps and make sure that the normal connection string for all apps is now named ‘DefaultConnection’ instead of ‘ConnectionString’, except for DBO connection for Manage. This one is still named ‘DboConnection’.
  • Test solutions, themes, custom connectors, components, and integrations.