Scroll

Updating Recommendations

Updating can be done very quickly. Due to the fact that users rely on the insights Exago produces, it is important to establish a meticulous process to assure their experience is fluid and uninterrupted. Below is the process we recommend when updating.

Read the change notes

For each major version we provide an Updating Guide that will highlight any actions beyond the normal updating process that are required. For interim releases, the change log is listed below the installer download and highlights what issues have been addressed.

Three environment updating

We recommend using at least three environments when updating, consisting of Development, Quality Assurance (QA), and Production. In the Development environment, a developer would first update Exago on their local machine or a testing server. Then, after testing the new features and verifying issue fixes, they would update a QA environment for more complete testing, likely implementing a User Acceptance Testing (UAT) server. Once the QA team has signed off on testing (more details below) then Exago can be upgraded on the production servers.

Tip: In supporting multiple environments, it is recommended to externalize environment-specific configurations to config files like web.config for easy re-deployment without code changes.

Steps for updating Exago

After downloading the installer the following steps should be done when updating.

Backup critical files

Critical files and any files that may have been manually or programmatically changed should be backed up prior to updating. These files include, but are not limited to:

Scheduler

  • eWebReportsScheduler.xml
  • eWebReportsScheduler.exe.config

ExagoWeb

  • web.config
  • appSettings.config

ExagoWebApi

  • appSettings.config
  • Config/WebReportsApi.xml

MonitoringService

  • Monitoring.exe.config
  • Monitoring.sqlite

Any custom language files, images or css files being kept directly within the Exago installation should be backed up as well. Any files added to bin directories should be safe during updates but may still need to be updated.

If reports and other files are stored to a medium other than the file system, they should be backed up as part of normal operating procedure.

Note: You may want to back up critical reports/dashboard definitions when updating between major versions

Run the installer to update Exago Web

It is safe practice to shut down associated application pools and web sites (IIS), or similar in Apache, as well as associated scheduler and monitoring services in order to relinquish handles on incorporated dlls before running the installer. There is no added benefit in updating while the service is running.

Note: The update can be installed over the existing version.

If you are using a custom Application Theme, make sure to recreate it in order for it to pick up the latest Exago icons and CSS. (We recommend using our provided utility.)

Update Exago WebService Api

If your installation of Exago utilizes the WebService Api, please update this as well.

Important: If you are using the REST Api, make sure to add the Rest key back to appSettings.config as it will be overwritten.

If your installation uses the .Net Api, update the reference to WebReportsApi.dll within the application launching Exago and perform a ReBuild. 

If your installation uses a .Net Assembly for any Extensibility Features (Folder Management, Server Events, Custom Functions, and so on):

  • Update the reference to WebReportsApi.dll within the application launching Exago and perform a ReBuild.
  • Update the appSettings.config and web.config files in Exago if it is utilized by Extensibility.

Update any Scheduler Services that are being used

Ensure that all the settings in ./eWebReportsScheduler.xml are correct

If applicable, copy any custom language files into the ./Language folder of each Scheduler installation

Note: It is recommended that the working directory, which where the XML of each Scheduler Services job are located, is backed up.

Recommended Testing

While our QA team does extensive testing and runs automated tests on every released build, we still recommend that your team performs some basic checks as due diligence. Particular areas of focus we suggest include:

  • Api integration:
    • Verify Exago launches successfully and the appropriate permissions, with a focus on data and multi-tenancy, are respected.
  • Features that utilize customization of Exago, such as:
    • Report Folder Management
    • Server & Action Events
    • Custom Functions
    • External Interface
  • Key reports and Dashboards:
    • This can be as simple as running a number of "standard" reports that all users may access or involve exporting reports to excel, pdf, or csv output and comparing the results with a stored master from a previous Exago version.

It is also recommended to ensure that each instantiated Role's functionality is still in place, and that Exago is run with the browser's Developer Tools in order to ensure no JavaScript errors are happening behind the scenes.

Updating to Production

Moving to production follows the same process as updating a UAT or staging environment, but involves a few additional steps:

  • Only update production during scheduled downtime, as updating Exago or changing the Config XML file in any way will invalidate current active user sessions.
  • Only bring the encrypted xml.enc file into the production environment.
  • Ensure that the Admin Console is removed from the environment.

A full security checklist can be found here.


Hidden Article Information

Article Author
Exago Development
created 2018-11-16 14:24:31 UTC
updated 2019-07-09 20:36:31 UTC

Labels
no labels yet!
Have more questions? Submit a request