Defining channels

A channel is a package of software applications with specific versions. Its label (for example, Beta or Release) indicates the quality and stability status of packaged applications. By defining multiple channels, you can deploy different products with appropriate versions to different user groups. When iManage Updater runs, it identifies which channel is assigned to the current user and based on that determines the products and versions that should be installed for the corresponding channel.

Channels are defined in the update.ini file, which is located at %ProgramData%\iManage\AgentServices\CentralizedConfigs. A sample update.ini file is as follows:

[General]
server=updates.imanage.com/Updates/Work10
default=beta
 
[beta]
AgentSvc=https://updates.imanage.com/Updates/Software/;iManageAgentServices-102061.exe;102.0.61;{67E81972-CA2E-4A7A-AD32-CC95A33B1592};{AD517F43-5642-4356-B5BE-8EC6920EFBFD};rollback;wixexe;/passive;
iManage Work Desktop for Windows x86=https://updates.imanage.com/Updates/Software/beta/;iManage Work Desktop for Windows x86.exe;102.0.150;{E97D2B88-6E81-45B1-8796-4C49C71ECEFA};{5DEB3BDC-4167-4EA0-A8E3-2366510ECE9B};norollback;wixexe;/passive;x86
iManage Work Desktop for Windows x64=https://updates.imanage.com/Updates/Software/beta/;iManage Work Desktop for Windows x64.exe;102.0.150;{B106FE6E-5160-401E-BCC7-8840DCD25E56};{98D55B81-8867-4E13-99C7-99157609C0F7};norollback;wixexe;/passive;x64
 
[release]
AgentSvc=https://updates.imanage.com/Updates/Software/;iManageAgentServices-102061.exe;102.0.61;{67E81972-CA2E-4A7A-AD32-CC95A33B1592};{AD517F43-5642-4356-B5BE-8EC6920EFBFD};rollback;wixexe;/passive;
iManage Work Desktop for Windows x86=https://updates.imanage.com/Updates/Software/beta/;iManage Work Desktop for Windows x86.exe;102.0.150;{E97D2B88-6E81-45B1-8796-4C49C71ECEFA};{5DEB3BDC-4167-4EA0-A8E3-2366510ECE9B};norollback;wixexe;/passive;x86
iManage Work Desktop for Windows x64=https://updates.imanage.com/Updates/Software/beta/;iManage Work Desktop for Windows x64.exe;102.0.150;{B106FE6E-5160-401E-BCC7-8840DCD25E56};{98D55B81-8867-4E13-99C7-99157609C0F7};norollback;wixexe;/passive;x64

The [General] section includes three properties:

  • server: Indicates the update server location. For example: updates.imanage.com/Updates/Work10

  • default: Indicates the default channel assigned to the user.

  • type: Indicates if https is used.

The next sections are the definitions for the channels, for example, [beta] and [release]. You can add as many channels as you want and name them as per your organization's requirement, for example, [pre-release], [release], and so on. Each channel includes a list of all the supported products. This gives the capability to support different versions of products with the same config file. You can add multiple iManage and third-party products within a channel. Each product line should be defined using the following format:

<product ID>=<update server path>;<installer file name>;<version number>;<upgrade code>;<product code>;rollback|norollback;<installer parameters (optional)>;<Microsoft Office bitness (x64, x86, or blank)>

Example:

iManage Work Desktop for Windows x64=https://updates.imanage.com/Updates/Software/beta/;iManage Work Desktop for Windows x64.exe;102.0.150;{B106FE6E-5160-401E-BCC7-8840DCD25E56};{98D55B81-8867-4E13-99C7-99157609C0F7};norollback;wixexe;/passive;x64

Table: Channel parameters

Parameter

Description

Product ID

Name of the product to be installed.

Example: iManage Work Desktop for Windows x64

Update server path

Update server location, which is used by the iManage Auto Updates feature to download the latest applications for the initial installation and whenever these applications are updated.

The server path can be a file path (local or UNC style) or an HTTP/HTTPS web server.

Installer file name

File name of the product installer.

Example: iManage Work Desktop for Windows x64.exe

Version number

Version number of the product to be installed. With this property, you can control the installation of different product versions for different channels. For example, you can select one product version for the [Beta] channel and a different version for the [Release] channel.

Upgrade code

A unique identifier (registry format GUID) that is valid for the life of the product. Upgrade code is the Windows installer property contained within the Windows installer database (.msi file) in the Property table. You can use a freeware—for example, Orca (available with Microsoft SDK)—to edit or browse an MSI file.

To access all elements embedded in the exe, such as the msi file, you can run dark.exe from the WiX toolset with the following arguments:

dark.exe -x <directory to extract files to> <pathtoinstaller.exe>

ie. "%wix%\bin\dark.exe" -x c:\UnpackedSetups\Work "C:\Setups\iManageWorkDesktopforWindowsx64.exe"

Product code

A unique identifier (registry format GUID) that changes for each major release of the product, or when you want to uninstall previous versions before installing the latest version. Product code is the Windows installer property contained within the Windows installer database (.msi file) in the Property table. You can use a freeware—for example, Orca (available with Microsoft SDK)—to edit or browse an MSI file.

rollback|norollback

iManage Updater supports the ability to roll back software products and versions, when necessary. Rollback allows for a firm to undo an update. For example, if a firm upgraded some users from version 144 to 149 and then decided—for some reason—that the upgrade was no longer desired, the firm can roll back users to version 144. When a rollback occurs, users are presented with the same notice that an update is available. When the update is installed, the user’s software is downgraded to the specified version, instead of upgrading to the latest version.

When norollback is specified, iManage Updater allows users to install any version of the software that is equal to or greater than the software version specified for their corresponding channel.

When rollback is specified, if iManage Updater finds that users have installed any version other than the one specified for that channel, it prompts users to install an update, which upgrades or downgrades the software as needed.

NOTE:

When a downgrade or rollback occurs, iManage Updater performs a complete uninstall and re-install of that software package.

wixexe|isexe|msi

The type of installer the product uses for installation. This determines what standard installer arguments are used for silent installation of the specified product.

Installer parameters (optional)

Arguments to the installer to alter the default installation behavior. Example: TRANSFORMS=\\myserver\sharename\Work10\customizations\customwork10.mst

Microsoft Office bitness

This property maps the product bitness with the Microsoft Office bitness. The value can be x64 or x86. If there is no dependency on the Microsoft Office bitness, you can leave it blank.