This procedure involves upgrading to a newer version of Kayako Fusion, Case or Engage from a lower release.
It is always recommended that the support desk be running on the latest Kayako 4 release. The latest releases have the most recent bug fixes and security patches applied, hence making your help desk bug free and secure.
Upgrading to Kayako 4.50?
If you are upgrading from a release earlier than Kayako 4.50, please note that there have been some major framework changes which may break compatibility with third-party modules and plugins. There may be additional steps you need to take. Please see the change log for more information.
Is your license active?
In order to get access to the latest updates for your Kayako helpdesk, your license needs to be active (your product updates and support subscription). To check if your license is active, login to my.kayako.com and click on Orders.
Your server must meet all the prerequisites specified at server requirements page to ensure that environment is up for upgrade.
Take your support desk offline
To ensure that your clients does not face any inconvenience while the support desk is being upgraded, it is recommended to take it offline. This is easily done by putting up a single index.html file in the document root directory. This file should have a notice in it explaining to your customers that you're currently upgrading your help desk and that it will be back shortly.
This also prevents any incoming email sent to your email queue(s) from becoming tickets and interfering with the upgrade process.
Backup the support desk data
The most important step in upgrading the support desk is making very sure you have a complete and valid backup of your version 4 support desk data.
Data directory backup
By default, the storage location of download files and file attachments is set to "files" directory. In this case, keep a copy of the files directory (placed in ../swift/ directory) as all of your ticket attachments and download files are stored here.
MySQL has published information about backing up databases here.
It is always recommended to backup the database via server command line interface
You should store this backup database on a RAID machine or optical storage (or multiple physical locations) for safe-keeping.
Modified templates backup
Export all the support desk templates that you have modified. The procedure to export the templates is as explained here.
Make sure that you have exported the modified templates for all the template groups.
Modified language pack backup
Export the language pack or additional language packs, if any. The procedure to export the languages is as explained here.
If you have purchased Footer Removal Link add-on, then you need to apply it again after the upgrade.
Download and extract the latest release product archive
Once the archive is extracted, you will get a directory which has the following directory:
Contains the product files
Upload the product files
The procedure to upload product files using an FTP client is as explained here.
Upgrading to 4.50 or later?
You are advised to upload a fresh copy of the helpdesk files, or in other words, remove the old files and after the upgrade copy back old ones as necessary, such as __swift/files/, __swift/geoip.
The latest build is compatible with PHP 5.5, so, please make sure you upload the latest version "__swift/config/config.php" file because of the changes made in the latest version file to accommodate the compatibility issues with PHP 5.5
Use the same database access details in the new "config.php" file as you were using in the earlier build.
Do not overwrite the "files" and "GeoIP" directory, placed in the directory "../swift/". If overwritten, replace the "files" directory after the upgrade with the backup of the "files" directory you have taken previously. Also make a copy of "__swift/config/config.php" files as it contains MySQL database details that is being used by the Helpdesk.
Now copy/move the following backed up directories/files to the document root, replacing them with the existing directories/files:
Insert the MySQL database details in the "__swift/config/config.php" file.
Setting file permissions
You need to set the file permissions, as described here.
Run the upgrade script
Access the setup page as http://your_supportdesk_URL/setup/ and click Upgrade as shown:
Clicking on the Upgrade option from the menu, you will be prompted to review the license agreement as shown here:
Click on the I Agree button and the script will then check your web server to ensure that it meets the minimum system requirements for the upgrade. If you encounter errors, follow the instructions on your screen. Otherwise, press Next to start the automated upgrade procedure:
The automated upgrade procedure will cycle through screens resembling this one until it has completed:
The automated portion of the upgrade script may take quite some time. Do not interrupt it for any reason.
Once the upgrade process has completed, you will see the following screen:
The setup directory must be deleted as soon as the upgrade finishes as a security measure. You will receive warnings if you do not delete the setup directory.
Login to the admin control panel and you will get the alerts to restore the templates and language phrases.
After upgrading your installation of Kayako Fusion, Case or Engage, you may need to restore some templates. This is because the newer version of the software may carry with it newer versions of templates. Rather than overwriting your customized templates, the upgrade system will simply mark the modified templates as “Upgrade Revert Required” after the upgrade. It may be such that you do need to revert the templates that have been updated, so that new functionality can be implemented.
The procedure to restore the templates is as explained here.
Restore language phrases
After upgrading your installation of Kayako Fusion, Case or Engage, you may need to restore some phrases. This is because the newer version of the software may carry with it the newer version of the language phrases. Rather than overwriting your customized phrases, the upgrade system will simply mark the modified phrases as “Upgrade Revert Required” after the upgrade.
The procedure to restore the language phrases is as explained here.
Rebuild support desk cache
The support desk cache needs to be rebuild to recreate the cached contents in the "__swift/cache/" directory, as well as all the cached data like "settings", "staffgroups","languagephrase" etc. stored in the database, prior to the upgrade.
The procedure to rebuild support desk cache is as explained here.