Information on upgrading Halo for On-Premise Instances
Versions
If you wish to upgrade halo, then you have potentially 3 options for versions to upgrade to, being our current Stable, Beta, or possibly our Release Candidate at the time.
The downloads can be found on the Halo Self Service Portal: https://support.haloservicedesk.com/
The latest features will be in the Beta version but could be potentially less stable, where as Stable been in use for longer with more stable features, but none of the brand new features, and the Release Candidate being somewhere in the middle.
Upgrading Halo
- Stop your halo site running on IIS
- Download the version of halo you wish to upgrade to, and extract the file
- Select all files within the extracted file, and drag and drop them into your existing WebApp file
- If you are upgrading from a pre 2.88 version of halo, you will need to download https://aka.ms/vs/17/release/vc_redist.x64.exe, Add it to your installfiles folder, and run the program.
- If you are upgrading from a version before 2.50, you will need to run the UpgraderOld.exe and follow the above step as well
- UPDATE – If the upgrade is from a version before 2.130 to after 2.130 you will want to install this or halo will not work: https://download.visualstudio.microsoft.com/download/pr/b50f2f63-23ed-4c96-9b38-71d319107d1b/26f8c79415eccaef1f2e0614e10cd701/dotnet-hosting-6.0.21-win.exe
- Run the upgrader.exe within halo and go through the steps given by the console
- Restart the site on IIS
- Navigate to your halo instance, and check in the ‘about’ window (bottom option of the ? menu at the top right) that it is showing the correct version
This might require a cache reset with SHIFT + F5, or a log in and out
Troubleshooting
If you notice any irregularities in the new version, or the version numbers don't match or haven't changed, then the first thing to do is reload and clear the cache by pressing Ctrl-F5. Unlike other browser options that clear the cache, pressing Ctrl-F5 also clears the server-side cache, so it's best to use this over your usual browser-cache clearing routine.
If after carrying out your last steps your Web App does not work, then you may be missing a .json MIME type at the server level.
Navigate to Server Level in IIS, in MIME types, and if the .json MIME type is missing then click 'Add…' and enter the values as per the screenshot below.
If you have the default deployment configuration (api and auth apps within a single site/folder) you can use the automatic upgrade, if not you must use the manual method.
Another Common Error
If the agent portal does not load up when you are trying to log back in after the upgrade, you must check you API information on your halo instance. To do so you can append api/instanceinfo to the URL i.e. https://myexamplehalo.halopsa.com/api/instanceinfo
If there are errors for an on-premise upgrade and a login loop is encountered after the upgrade from 2.126 to 2.132 then please manually create the folder as below and ensure that the user running the web application in IIS has permission to modify that folder.
C:WindowsSystem32configsystemprofileAppDataLocalIronSoftware
This error is stating that there is a lack of permissions granted, so to bypass this we can increase the level of permissions given to the IIS_IUSRS.
NB: There may already be an IIS_IUSRS user name on list, you will just have to give the following permission to the user by clicking on the IIS_IUSRS in the user name list and then giving the "Full control" Permission:
If you head to the API folder within you halo folder, then right click on the folder and click on properties you can go to the security tab and add permissions.
Click on System and then "Edit" from here the user can be added
when you check names it should find that user, then go back to the user name list and grant the following permission for the IIS_IUSRS:
Now when you load the website, it should work as intended.
Permission error regarding the Integrator file when dragging and dropping Halo Files
When initially dragging and dropping the upgraded Halo files:
You may experience a permissions error specifically regarding the Integrator file located here:
This is due to task scheduler currently running a scheduled task, and locking itself down to prevent any tasks from being ended whilst running. You can either wait for the task to finish running or you can end the task here: