Upgrading UDMG
This guide explains how to upgrade UDMG Server to 3.3.x on Linux and Windows, a straightforward process that replaces the installed package without affecting your existing Configuration File or data.
Most changes are applied automatically on first startup. However, some configurations should be reviewed to ensure they behave as expected after the upgrade.
The process involves:
- Following the platform-specific upgrade steps for Linux or Windows.
- Reviewing the specific changes between 3.2.x and 3.3.x that require attention.
Linux
Upgrade Command
Upgrading UDMG requires a single command, which varies by package format.
To upgrade the installed package, run one of the following commands:
- RHEL-Based Systems (e.g., CentOS, Fedora)
- Debian-Based Systems (e.g., Ubuntu)
The -U flag upgrades the existing package, replacing the current version with the new one. Unlike -i (used in the Linux Host Standard Installation guide), it does not fail if a previous version is already installed.
sudo rpm -Uvh udmg-server_3.3.x_linux_amd64.rpm
This is the same command used for a fresh installation. The dpkg -i command automatically upgrades the package if a previous version is already installed.
sudo dpkg -i udmg-server_3.3.x_linux_amd64.deb
Configuration File Handling
On Linux, the existing Configuration File is preserved during the upgrade. By default, it is located at /opt/udmg/etc/udmg-server.hcl.
Additionally, the new package ships an updated sample file at:
- RHEL-Based Systems (e.g., CentOS, Fedora)
- Debian-Based Systems (e.g., Ubuntu)
/opt/udmg/etc/udmg-server.hcl.rpmnew
/opt/udmg/etc/udmg-server.hcl.dpkg-new
Windows
Installer
Run the UDMG Server installer (udmg-server_3.3.x_setup.exe) and follow the prompts to complete the upgrade.
Configuration File Handling
On Windows, the existing Configuration File is preserved during the upgrade. Its default location is C:\Program Files\Stonebranch\UDMG Server\udmg-server.hcl. The installer does not place a new sample alongside.
To review any new arguments, refer to the Configuration File page.
Upgrading from 3.2.x to 3.3.x
This section covers the configuration updates required after upgrading from UDMG 3.2.x, and the behavioral changes that take effect automatically on first startup.
Configuration File Required Changes
Skipping any of the two following changes might prevent UDMG Server from starting.
If you decide to reuse your existing 3.2.x Configuration File, make the two following edits:
- Ensure that
jwt.signing_keyis at least 30 characters by following this step. - Remove the
api.allow_concurrent_user_loginargument, which is no longer supported in the Configuration File. Starting with UDMG 3.3.0, concurrent administrative sessions are controlled by the Maximum Concurrent User Sessions setting.
Publish Events: Transition to Tasks and Workflows
In UDMG 3.2.x, Universal Events were configured directly on each Pipeline using the Universal Event option and related fields.
Publish events were triggered only when a file was received, regardless of whether the transfer succeeded or failed.
Starting in UDMG 3.3.0, Universal Events are implemented through Publish Event Tasks, which are part of Pipeline Workflows.
What Happens on Upgrade
When upgrading to UDMG 3.3.x, a migration runs automatically on first startup and converts existing publish event configurations:
- For each Pipeline with the Universal Event option enabled, a Task is created and attached to the Pipeline Workflow.
- The Task inherits the original Universal Event configuration.
After the migration, the following fields are removed from the Pipeline Record stored in the UDMG database:
publish_event_enabledpublish_event_namepublish_event_credentials_name
The migration is reversible; however, rolling back removes all auto-created Tasks.
Trigger Assignment
In UDMG 3.2.x, publish events were triggered only when a file was received.
In UDMG 3.3.0, Tasks can be triggered at multiple points in the transfer lifecycle. See Triggers.
During the migration, the following changes apply:
- Each Task is assigned to one or more Triggers based on the Pipeline's Source Endpoint and Destination Endpoint.
- Only Triggers supported by the Pipeline type are considered. See Trigger Availability.
If a Task is not assigned to an expected Trigger, it is likely because that Trigger is not supported for the Pipeline type.
UAC Configuration
Global UAC configuration remains unchanged, as defined in the HCL Configuration File (see uac block).
Recommended Actions After Upgrading
To verify the migration results, complete the following steps:
- Review migrated Publish Event Tasks by following these steps.
- Confirm that each Pipeline Workflow has the expected Tasks in the expected trigger columns by following these steps.
- Consider adding Tasks for On Staged, On Sent, and On Error Triggers.
Password Policy: Migration to Database-Backed Configuration
In UDMG 3.2.x, password policy was configured in the Configuration File under the security.password block.
Starting in UDMG 3.3.x, password policy is managed through the UDMG Admin UI.
What Happens on Upgrade
During the first startup of UDMG 3.3.x, existing password policy values from the Configuration File are automatically migrated to the database.
After the migration, the following applies:
- The database becomes the single source of truth.
- Changes to the Configuration File no longer affect password policy.
Policy Migration
Password policy arguments that were configurable in the 3.2.x Configuration File are migrated with their current values.
New policy constraints introduced in UDMG 3.3.x have no equivalent in the 3.2.x Configuration File and are initialized with default values.
| Field | Migrated from HCL Argument |
|---|---|
| Maximum Length | No, this is a new policy (default value: 72) |
| Maximum Password History | No, this is a new policy (default value: 3) |
| Maximum Repeating Characters | No, this is a new policy (default value: 3) |
| Minimum Length | security.password.min_length |
| Minimum Lowercase Characters | security.password.min_lower_case |
| Minimum Numbers | security.password.min_numbers |
| Minimum Symbols | security.password.min_symbols |
| Minimum Uppercase Characters | security.password.min_upper_case |
For more details, see Password Policy.
Deprecated Environment Variables
These environment variables correspond to the security.password HCL arguments. Like those arguments, they are deprecated in UDMG 3.3.x: they are only consulted during the initial migration on first startup and are ignored afterward.
UDMG_SECURITY_PASSWORD_POLICY_MIN_LENUDMG_SECURITY_PASSWORD_POLICY_MIN_LOWERUDMG_SECURITY_PASSWORD_POLICY_MIN_NUMBERSUDMG_SECURITY_PASSWORD_POLICY_MIN_SYMBOLSUDMG_SECURITY_PASSWORD_POLICY_MIN_UPPER
Recommended Actions After Upgrading
To verify and configure password policy after the upgrade, complete the following steps:
- Review password policy settings by following these steps.
- Configure new fields by following these steps.
- Remove the
security.passwordblock and any environment variables related to password policy. They are no longer used by UDMG and have no effect on password policy.