Updating

# Recovering from a stuck update

In rare cases, the update process can get stuck - for example, if your server was forced to reboot during the update. This can leave the helpdesk in an offline state.

The helpdesk is put offline by the use of “trigger files” that are created while the update occurs and should be deleted when it’s complete. If the process is interrupted or fails unexpectedly, then these files won't be cleaned up, so the helpdesk stays offline.

To clean these files up, execute this command from the command-line:

# Linux
cd /path/to/deskpro
/path/to/php bin/console dp:update:reset

# Windows
cd C:\path\to\deskpro
C:\path\to\php.exe bin\console dp:update:reset


This will remove the relevant trigger files that are keeping the helpdesk disabled.

If you are on an older version of Deskpro and that command returns an error, you will need to remove these files manually

Remove /deskpro/var/cache/helpdesk-offline.trigger-
Remove /deskpro/var/cache/active_build.txt


Note that depending on where or how the upgrade failed, your helpdeks may be in an unknown state. The best thing to do is to collect all of the log files (/path/to/dekspro/var/logs) and submit a ticket. Our agents will be able to give you insturctions on what to do next.

# Reverting to a previous build

If you’ve updated your helpdesk and run into a problem, you can revert to the previous build you were using.

You must have made a valid database backup before applying the update. The automatic updater makes backups by default, and if you use he CLI updater utility, it will ask you to make a backup first.

The first step is to disable the cron job or Scheduled Task. This ensures that no processes are running on the system while you are in the middle of restoring things.

2.) Disable the helpdesk

Next, you should disable the helpdesk itself to make sure no users are trying to use the system.

You can do this by creating a file called var/cache/helpdesk-offline.trigger.

3.) Restore the database

Next you need to restore your database. If you made a database backup during your upgrade, you can find it in data/backups named with the current date in the format YYYY-mm-dd-database.zip.

Create a new database. This will be used to restore into, leaving your current database untouched. Restore the database. We recommend restoring the database directly from the command-line using the mysql client.

mysql -u<user> -p<pass> <your_new_db_name> < /path/to/backupname.sql


4.) Update config

You need to edit config/config.database.php and change the dbname option to use the new database you created above.

5.) Activate the old build

DeskPRO keeps the files from the old version around, so you just need to resume using the old files. You do this from the command line:

# Linux
cd /path/to/deskpro
/path/to/php bin/console dp:update:activate-build 12345

# Windows
cd C:\path\to\deskpro
C:\path\to\php.exe bin\console dp:update:activate-build 12345


Where "12345" is the build of the previous version.

If you don't know what the build ID was, you can check the "path/to/deskpro/app/" directory. This directory will contain a number of directories. Your previous build will be the second to last numbered directory. For example, if you see a directory named "500/" and a directory named "499/", then you know that the previous build was "499".

3.) Re-enable the helpdesk

Execute the reset command to remove the "helpdeks offline" trigger files:

# Linux
cd /path/to/deskpro
/path/to/php bin/console dp:update:reset

# Windows
cd C:\path\to\deskpro
C:\path\to\php.exe bin\console dp:update:reset


And also re-enable the cron job or Scheduled Task you disabled in step 1.

Authors list

First published: 03/05/2017

Last updated: May 24, 2018 by Christopher Nadeau