Universal Controller 7.5.0.0 Release Notes

Release Notes

Universal Controller release 7.5.0.0 contains the following high-level features. For a complete list of all the included features and fixes, please refer to the Universal Controller 7.5.x Maintenance list.


Before upgrading to UC 7.5.0.0 carefully review the following enhancements that introduce changes to the default behavior:

B-17918: Universal Event - Extended Read Security for Agent and System Property Events.

B-17597: z/OS Task Increment Number of Override Instances on Force Finish.

Architecture

Backlog

Title

Description

B-17564

Optimize throughput for task instance status change subscribe/publish/unsubscribe.

The task instance status change subscribe/publish/unsubscribe process has been optimized for performance.

Security

Backlog

Title

Description

B-17055

Standard Login Method with Authenticator App (TOTP) 2FA.

Local User accounts can now be configured to use 2 Factor Authentication (2FA) via a 3rd Party Authenticator App.

A user configured for Standard / Authenticator App (TOTP) must setup their Universal Controller account in their authenticator app during their initial login.

For subsequent logins, the “challenge” page will be presented during the login flow.

The user will not be required to enter a TOTP code when restoring an expired session from within the application.

E-01865

TrustStore Settings.

Provides new Administration option for managing the TrustStore from the UC UI. The TrustStore Settings menu item will only be shown for users with the ops_admin role. Users will be able to perform the following.

  1. View TrustStore configuration options.

  2. List entries for the TrustStore.

  3. View certificate details for trusted certificate entries.

  4. Add trusted certificate entries to the TrustStore.

  5. Delete trusted certificate entries from the TrustStore.

The TrustStore file can only be updated if it is writable by the user that the UC Tomcat process is running under, otherwise it will be displayed as read-only.

A restart may be required after making changes to the TrustStore if the component accessing the TrustStore uses the default SSLContext.


B-14038

Dynamically refresh uc.properties updates for database password.

Updates to the uc.db.password or uc.db.user properties are now refreshable properties and will be reloaded and updated within the Universal Controller dynamically.

B-17482

Store UC Database password in External Secrets Manager.

Customers can now source the UC database password from a 3rd party Secrets Provider.

A new property is available to specify which secrets provider to use for the UC database password.

uc.db.secrets_provider

Supported Secrets Providers:

  • Universal Controller

  • AWS Secrets Manager

  • Azure Key Vault

  • CyberArk Credential Provider

  • CyberArk Central Credential Provider

Additional properties are available to configure the selected Secrets Provider.

If property uc.db.secrets_provider is left unspecified, Universal Controller is assumed to be the provider, and the controller will continue to load the password from the uc.properties using one of the following properties.

  • uc.db.password
  • uc.db.password.encrypted

B-17918

Universal Event - Extended Read Security for Agent and System Property Events.

This Feature introduces a change in behavior for monitoring both uac_agent_changed and uac_property_changed Universal Events.

When monitoring Predefined Global Universal Events through a webhook and/or universal monitor, the Execution User must also have read permission for the underlying record the Universal Event is associated with.

For example,

For the uac_agent_changed Univeral Event, the Execution User must have Universal Event read permission for uac_agent_changed and Agent read permission for the agent that changed.

For the uac_property_changed Univeral Event, the Execution User must have Universal Event read permission for uac_property_changed and Property read permission for the property that changed.

For the uac_task_status_changed Univeral Event, the Execution User must have Universal Event read permission for uac_task_status_changed and Task Instance read permission for the task instance that changed.

User Experience

Backlog

Title

Description

B-15906

Undo / Redo for Trigger Enable or Disable.

This enhancement implements an undo / redo capability for Trigger Enable / Disable and Run Command on Filtered from the Audit Record view.


B-16771

User preferences for Record New In Tab and Reference New in Tab default behavior.

The Record and Reference New In Tab properties allow a new record form to be displayed in a Tab by default instead of being displayed in a pop-up window.

This can be configured as both a system and user property.

B-16772

User preferences for Record Open In Tab and Reference Open in Tab default behavior.

The Record and Reference Open In Tab properties allow a record form to be displayed in a Tab by default instead of being displayed in a pop-up window.

This can be configured as both a system and user property.

B-17095

Launch with Variables from Workflow Editor and Workflow Task Form.

You can now Launch with Variables from both the Workflow Editor and the Workflow Task form.

In the workflow Editor Launch with Variables is exposed as a right click option:

In the Workflow Task form Launch with Variables is exposed from the task form command bar:

B-17447

Self-Service Options: Enforce Trigger Now/Launch Variables.

A new Enforce Variables Self Service option can now be specified on the Task and Trigger definitions. This is designed for scenarios where you want to prompt a user to review and/or supply values when launching or triggering a Task or Workflow.

For Tasks this option will enforce Launch with Variables whenever that task is manually launched.

For Triggers this option will enforce Override Trigger Variables whenever that trigger is triggered now.

B-17448

Self-Service Options: Lock Trigger Now/Launch Variables.

A new Lock Variables Self Service option can now be specified on the Task and Trigger definitions. This is designed for scenarios where you want a user only to be able to supply variable values, this prevents adding deleting or changing the variables in any other way when using Launch with Variables or Override Trigger Variables.

B-17628

Script Upload: Support for Additional Codepages.

The Script Upload dialog has been updated to support additional codepages.

B-16138

Workflow "Save and Edit Workflow".

A new Save & Edit option has been added to the list of Save options for a new Workflow to avoid saving and then having to click Edit Workflow.

E-01862

SAP Task Enhancement

A new Enhanced SAP Task layout introduced to provide a more familiar and easier experience for user’s familiar with the SAP native interfaces.

The Enhanced layout will be presented as the default for new SAP Task definitions and existing SAP Task definitions will be displayed in Legacy mode.

Universal Integration Platform (UIP)

Backlog

Title

Description

B-17442

Optimize extension deployment to reduce memory footprint.

The enhancement addresses the following items:

  • Breaks on-registration deployment into multiple transactions, one per extension.

  • Avoids persistence of extension data in output messages in controller database.

  • Avoids double, in parallel deployment of the same extension to the same agent when on-registration and on-demand registration happen at the same time.

    • Introduces a maximum number of parallel deployments configuration where you can limit the maximum number of extensions being deployed system-wide. This introduces a new System Property Maximum Extension Deployment Threads.

B-17544

Universal Extension - Wait until Running instances are completed before deployment.

Provides the enhancement to have an on-demand deployment (due to new archive being uploaded in the extension template for example) to wait for all running task instances that are currently using the extension on the specified Agent to end before deploying the new extension archive down to the Agent.

B-17766

Add mitigation logic for case where deployment message can be lost due to agent restarting.

Additional checks are made to prevent extension deployment messages from being lost due to a Universal Agent restart.

B-17091

Universal Event - Task Instance Status Change

A new Universal Event System Template has been added for Task Instance Status Changes.

B-17802

Push Universal Event - Accept Content-Type: text/xml

The Universal Event Web Service API has been enhanced to also accept text/xml payload content.

B-17960

Universal Event - Add Universal Event Business Services to the Webhook JSON payload, and the Universal Monitor Trigger Built-in Variable.

If the Universal Event is published from a universal task instance (via the universal extension API), the Universal Event inherits the business services from the task instance. (for example, the Universal Task Instance Publisher)

If the Universal Event is a system-published event, it inherits the business services of the object the event is being published for. (for example, Agent, Task Instance)

If the Universal Event is published via our publish web service API, the business services are specified as part of the request body.

If the Universal Event is published via our push web service API, the business services are specified as part of the request query parameters.

  • Universal Monitor Trigger Built-in Variable

ops_trigger_universal_event_business_services=<comma-delimited-business-service-names>

  • Webhook Universal Event Payload

"businessServices" : <JSON array literal with String array values>

Web Service API

Backlog

Title

Description

B-16049

LDAP Read and Update

This enhancement adds new web service API’s to Read, Update & Bind Password for LDAP Settings.

B-16034

Optionally set Operational Memo in Task Instance Updates.

You are now able to optionally set the Task Instance Operational Memo from the following Web Service APIs:

Cancel a Task Instance
Clear All Dependencies
Clear Exclusive Dependencies
Clear Predecessor Dependencies
Clear Time Dependency
Clear Virtual Resource Dependencies
Delete a Task Instance
Force/Finish a Task Instance
Force/Finish Cancel a Task Instance
Hold a Task Instance
Issue Set Completed Command for a Manual Task Instance
Issue Set Started Command for a Manual Task Instance
Release a Task Instance from Hold
Rerun a Task Instance
Retrieve Task Instance Output
Set or Modify Wait Time/Duration for Task Instance
Set Priority for a Task Instance
Skip a Task Instance
Skip a Task Instance Path
Unskip a Task Instance

B-16035

Hold Task Instance add Hold Reason.

The Hold Task Instance API now allows the Hold Reason to be set.

Workload Analytics

Backlog

Title

Description

B-16770

Add Operational Memo field to History record and exported ops_history_*.xml file.

The operational memo field is now included in the History record. It is also now included in the ops_history_*.xml file, this file is created during the backup and purge process.

B-17796

Differentiate between License Monthly Executions and Total Executions

A new History Counter metric uc_history_total is available and provides the total number of task instances that ended with a status of In Doubt, Start Failure, Confirmation Required, Cancelled, Failed, Skipped, Finished, or Success.

Each uc_history_total metric provides the following labels type "the type of the task instance”, status “the end status of the task instance”, and cluster_node the node id of the cluster node.

These new metrics are available via the Monitoring Web Service Universal Controller Metrics (Prometheus).

E-01873

Metrics, and Trace

Observability complements traditional monitoring by providing actionable insights based on metric, trace, and log data.

In UAC 7.5,0,0 we are providing

  1. Universal Controller Metrics (Prometheus) Web Service API. First introduced in UAC 7.1.0.0, the Metrics API has been extended to provide additional metrics to support Observability.

  2. OpenTelemetry. A new feature for UAC 7.5, this initially allows our integration tasks to inject 3rd party application data for observability. OpenTelemetry is an open-source Observability framework for standardizing the collection and transmission of Observability data to backend platforms.

Workload Automation

Backlog

Title

Description

B-17112

Add "ops_trigger_workflow_id" built-in variable.

A new ${ops_trigger_workflow_id} Task Monitor Task Instance/Trigger built-in variable has been added. This Resolves to the uuid of the workflow instance containing the task instance that matched the Task Monitor conditions and fired the trigger. This variable is available only if the task instance that matched the Task Monitor conditions and fired the trigger is invoked by a workflow.

E-01864

Previous Instance Wait

A new Previous Instance Wait option has been added to the Workflow definition.

Previous Instance Wait

  • -- None --

  • Wait for Last

    • Every task instance directly within the workflow instance will remain in Instance Wait until the most recent prior instance of the same task has completed.

  • Wait for Last / Same Workflow

    • Every task instance directly within the workflow instance will remain in Instance Wait until the most recent prior instance of the same task, within an instance of the same workflow, have completed.

  • Wait for All

    • Every task instance directly within the workflow instance will remain in Instance Wait until all prior instances of the same task have completed.

  • Wait for All / Same Workflow

    • Every task instance directly within the workflow instance will remain in Instance Wait until all prior instances of the same task, within an instance of the same workflow, have completed.

Each subworkflow determines the behavior of its own children.

A new Override Previous Instance Wait option has been introduced on the Task definition.

This option only applies for an instance running within a workflow.

Override Previous Instance Wait

  •  No

    • Behavior determined by the parent workflow configuration.

  • Yes / -- None --

    • Regardless of the parent workflow configuration, the task instance will never wait for a previous instance to complete.

  • Yes / Wait for Last

    • Regardless of the parent workflow configuration, the task instance will remain in Instance Wait until the most recent prior instance of the same task has completed.

  • Yes / Wait for Last / Same Workflow

    • Regardless of the parent workflow configuration, the task instance will remain in Instance Wait until the most recent prior instance of the same task, within an instance of the same workflow, have completed.

  • Yes / Wait for All

    • Regardless of the parent workflow configuration, the task instance will remain in Instance Wait until all prior instances of the same task have completed.

  • Yes / Wait for All / Same Workflow

    • Regardless of the parent workflow configuration, the task instance will remain in Instance Wait until all prior instances of the same task, within an instance of the same workflow, have completed.

The resolved expected behavior for each task instance will appear on the Task Instance as read-only field Previous Instance Wait Resolved(ops_exec."instance_wait_resolved").

If the task instance is not running within a workflow, the resolved expected behavior will be -- None --.

A new Clear Instance Wait command has been introduced to remove the previous instance wait condition for a task instance that is in an Instance Wait status.

z/OS Enhancements

Backlog

Title

Description

B-07031
B-17707

Task/Task Instance View/Edit JCL from JCL Location and JCL Override Location.
View/Edit JCL Credentials User Preference.

z/OS tasks now optionally allow the JCL to be fetched for viewing / editing from the JCL or JCL Override locations from z/OS Task Definitions or z/OS Task Instances. This feature requires a user to be granted one of 2 new security roles, ops_jcl_view or ops_jcl_edit and to have the relevant Read or Update Permissions for the Definition or Instance.

A new user preference View/Edit JCL Credentials Default has been introduced to support this feature.

B-17522

Simulation Resolution of JCL substitution variables.

Users can now simulate the resolution of z/OS JCL variables. When running z/OS tasks in simulation mode with the z/OS JCL Resolution option enabled, the Resolved JCL is returned to the simulated task instance output.

B-17597

z/OS Task Increment Number of Override Instances on Force Finish.

The feature changes the previous default behavior for z/OS tasks. A new system property z/OS Task Increment Number Of Override Instances On Force Finish has been introduced to allow restoring the previous behavior.

When a zOS task completes with a status = SUCCESS or FINISHED, the Number of Override Instances count is incremented by one and the JCL Override Location is deleted automatically when the Number of Override Instances count matches the Override Instance Count for Deletion.

Previously the Number of Override Instances count was only incremented on status = SUCCESS.