Release Manual 9.7.x

    Upgrade instructions

    The Digital.ai Release upgrade process you use depends on the version from which you are upgrading, and the version to which you want to go.

    For detailed instructions based on your upgrade scenario, refer to Upgrade scenarios.

    Digital.ai Release 9.7.0

    Digital.ai Release 9.7.0 is a long-term support (LTS) version that will be supported until superseded by the next long-term support (LTS) version. For more information, refer to Short-term support/Long-term support policy.

    Digtial.ai Release 9.7.0 new features

    Secrets management

    Digital.ai Release now includes out-of-the-box support for Hashicorp Vault and CyberArk Conjur, as well as a generic interface that you can extend to integrate with your preferred secrets management solution.

    Improved audit reports

    The release audit report provides detailed information about everything that a release entails: what tasks it contained, who executed those tasks, when and where they were executed, and the tools which Digital.ai Release worked with to run automated tasks. The release audit report now automatically captures additional information about deployments that are executed in Digital.ai Deploy, such as who owned the deployment task, which environment was targeted, the result of the deployment, and whether it was rolled back.

    Improved task overview

    The Task Overview now offers better search capabilities, a new grid view and polling settings.

    Customized login screen

    Administrators can now add custom text and images to their log-in screens in Digital.ai Release. Using custom text messages and images you can warn or inform users against systems they are not allowed to use or not authorized to do so. This is useful in highly regulated environments which require internal IT systems to issue necessary warnings to users.

    Webhooks

    Webhook event triggers allow you to easily integrate other Devops tools with Digital.ai Release. A webhook event trigger listens to event sources such as Continuous Integration tools, source control management tools, and artifact repositories. When an event occurs in a source, Digital.ai Release automatically starts a release, based on a specified template. Webhook event triggers include advanced filtering capabilities, so you have granular control over the event conditions that trigger a release. You can create filters using an easy-to-use visual designer or by writing Jython or Groovy scripts.

    Gate tasks

    Gate tasks now can be configured to be completed automatically after some time if all conditions and dependencies are done. This setting is enabled by default, running every 10 minutes and completing the task if the gate task started after the graceDuration (5 minutes default).

    From 9.7.2, you can disable this feature with the following config:

    xl {
      features {
        gate-actor {
          enabled = false
          graceDuration = 5 minutes
          unstuckInterval = 10 minutes
        }
      }
    }
    
    

    Note: Gate tasks can also complete automatically even when no conditions and dependencies are set.

    Strict check around encrypted values

    As a part of security improvement, release will now restrict users to pass encrypted values for any create or update operation.

    From 9.7.7, you can fall back to previous behaviour for script task with the following config:

    xl {
      security {
        accept-encrypted-secrets {
          enabled = true
        }
      }
    }
    

    Contact Digital.ai Support if you have hotfixes

    If you have hotfixes installed, contact the Digital.ai support team before upgrading.

    Digital.ai Release 9.7.0 release notes

    New features

    • [ENG-251] - Implement Password from Vault
    • [ENG-261] - Restrict encrypted values to backend only
    • [REL-10060] - Tasks screen: Add ability to search by task tags
    • [REL-10063] - Tasks screen: Add ability to search by single folder
    • [REL-10065] - Tasks screen: Add "order by status"
    • [REL-10066] - Tasks screen: Rename "My tasks" to "Tasks"
    • [REL-10078] - move the 'watchers' property and functionality from notification module to core
    • [REL-10103] - Global Permission Report
    • [REL-10149] - Finalize Permissions Report
    • [REL-10274] - Branding Modifications in XL Release
    • [REL-10325] - Branding Modifications in report/plugin/email in XL Release
    • [REL-9715] - Date time Karma unit tests fails if timezone set to Asia/Kolkata

    Improvements

    • [REL-10081] - Improved number of activity log inserts when updating teams on the folder page
    • [REL-10165] - Do not load all pending releases when starting XL Release
    • [REL-10166] - Enhance overdue notifications for active releases when starting XL Release
    • [REL-10167] - Enhance due soon notifications for active releases when starting XL Release
    • [REL-10168] - Enhance start pending tasks when starting XL Release
    • [REL-10171] - Write an upgrader to set values for date properties in XLR_RELEASES Table
    • [REL-10217] - Expose Quartz notification operations through JMX
    • [REL-10282] - Microsoft SQL Server database definitions should not use DATETIME type
    • [REL-10316] - Add debug logger on devops-as-code
    • [REL-9406] - Allow comments to be deleted on templates and releases
    • [REL-9568] - [Placeholder] Slowness in filtering teams in a folder with a lot of teams
    • [REL-9607] - Random global roles addition is allowed in Design > Folders > Teams and Permissions. List of pre-defined roles should exist.
    • [REL-9917] - Blank Item fields make the audit report's Activity Logs tab hard to read

    Bug fixes

    • [ENG-541] - Typo in XL Release documentation
    • [ENG-544] - XLR: Color picker for phases is misaligned
    • [ENG-552] - Allow Value provider scripts execution inside the security sandbox
    • [ENG-563] - 'Control task name' field is mandatory in XL deploy-> control task type
    • [ENG-618] - Jython script task fails with NPE when all code in the task is commented out
    • [ENG-661] - Fix encryption for senderPassword field in Notification Task
    • [ENG-706] - Can not delete empty user added by mistake in Watchers and XLR gives error
    • [ENG-726] - Email notification message is not proper when active task assigned to team/user
    • [ENG-758] - Download report from email navigates to Filter Report Data under Release audit report
    • [REL-10032] - The task after "User input task" picks the old release variable value
    • [REL-10049] - Script task - global and folder variables are captured inconsistently before task starts
    • [REL-10069] - Users in Upper Case can't complete a task if it is assigned to the user in lower case
    • [REL-10126] - Duplicate tabs not consistent.
    • [REL-10156] - Release can't be created in different target folder if the template contains a task with an attachment
    • [REL-10160] - Watchers list is adding wrong watcher along with true one.
    • [REL-10173] - Fix duplication of release variables
    • [REL-10189] - Description field in task details gets wrapped badly for multi line text after saving
    • [REL-10201] - XL Release recreates deleted user
    • [REL-10309] - Variable used in markdown description or title resolved after reload only
    • [REL-10313] - No trim happens on checking duplicating name in several places including environment and application
    • [REL-10314] - When a validation error happens in Environment creation form, you have to reload otherwise there is no going forward
    • [REL-10323] - CI Id is not generated for MappedProperty on EventBasedTrigger
    • [REL-10376] - release.url is not working in script task
    • [REL-10377] - Delivery pattern: Save button doesn't get disabled in edit mode
    • [REL-3892] - Cannot complete tasks in advance when release is in Failed or Failing state
    • [REL-7905] - Generated documentation improvements
    • [REL-7981] - No "Active task assigned" notification sent to team when a task is assigned without task owner
    • [REL-8590] - Different processes for adding an unknow user for Watchers and Assignees
    • [REL-8735] - Jira workflow (jira xlr add-on) is not able to start release because optional release variables are deemed required by XLR server
    • [REL-8969] - UI defect when cursor move out of description windows.
    • [REL-9305] - Users can no longer drag tasks around in a Sequential Group Task
    • [REL-9559] - Drop-down icons floating on scrolling
    • [REL-9676] - Variables in the template's description are resolved if the template is created from an External Script task
    • [REL-9846] - ZipException when HttpRequest.py hits 404 with no content.
    • [REL-9867] - Folder Variables failing when used as a value provider for a list box
    • [REL-9878] - Resolve the role name to a global role only when calling rolesApi.getRole(roleName)
    • [REL-9896] - Disable checkbox if user does not have required permission to edit task
    • [REL-9901] - Server error for long folder name
    • [REL-9911] - Not needed padding on watchers list on task
    • [REL-9919] - Two global variables with the same name can be created
    • [REL-9951] - Variable in phase title not resolved unless user has edit release permission
    • [REL-9958] - Calendar time is miss-aligned if navigator is open

    Digital.ai Release 9.7.1 release notes

    New features

    • [REL-8498] - Script_output.log file under Attachment is not attached when task is Aborted

    Bug fixes

    • [ENG-1036] - Update third party component with known vulnerabilities
    • [ENG-669] - Inherit Teams and permissions from parent folder shows correct permissions only when clicked on Save
    • [ENG-786] - Tags field on the release properties page does not have full width
    • [REL-10350] - Folder Variable value is not being passed to Input Task
    • [REL-10403] - Unable to assign permissions to teams having one character long names
    • [REL-10421] - Groovy template import unable to extract some kinds of zip files
    • [REL-10422] - Handling backslashes in variable interpolation correctly
    • [REL-10433] - Dashboard name/title is not exported in yaml for custom dashboards while exporting dashboard through XL CLI
    • [REL-10434] - While generating yaml for a template, release dashboard definition for other templates in that folder also gets included.
    • [REL-10435] - Comma in parameter is encoded in URL

    Digital.ai Release 9.7.2 release notes

    Bug fixes

    • [ENG-1046] - Team name is not trimmed through API calls
    • [ENG-1374] - Security fixes for docker images
    • [ENG-1384] - XLR: Make StuckGateDetectorActor configurable
    • [REL-10351] - Team name is treated as case-sensitive which creates problem in assigning task to a team through script.

    Digital.ai Release 9.7.3 release notes

    New features

    • [ENG-1481] - XL Release doesn't fetch any build status(by using variable) for failed jenkins job
    • [REL-10441] - Case sensitivity issues on environments

    Bug fixes

    • [ENG-1398] - Template Id from variable in Create Release Task is not loading
    • [ENG-1400] - Negative integer variable
    • [ENG-1439] - Links around "ServiceNow" documentation are broken
    • [ENG-1440] - TriggerTitle Upgrader on 9.0 is not compatible with 9.7
    • [ENG-1441] - Variables in XL Release triggers are overwritten when template variable is updated
    • [ENG-1461] - XLRelease980TeamsTrimName Upgrader is inconsistent with MSSQL older versions
    • [ENG-1543] - Permission Error not showing for Create Release Task for Template field
    • [ENG-1588] - Team is not visible while adding to trigger: manage trigger permission under teams and permissions
    • [REL-10430] - Column length too small in XLR_DEPENDENCIES
    • [REL-10459] - Empty string in key-value variables makes groovy export unusable

    Digital.ai Release 9.7.4 release notes

    Bug fixes

    • [ENG-1707] - Fix closing brackets for html code in AngularJS Code
    • [ENG-1742] - Fix broken rrule dependency

    Digital.ai Release 9.7.5 release notes

    Improvements

    • [ENG-1744] - Keep keystore and truststore configuration when ssl and mutualssl flag value are toggled off
    • [ENG-1774] - Use startedFromTaskId to show a relation with relationship-plugin

    Bug fixes

    • [ENG-1747] - Fix table component on task access screen
    • [ENG-1771] - Remove zone index from IPv6
    • [ENG-1772] - Create release button can be clicked multiple times
    • [ENG-1773] - XL-CLI generates templates when only permissions are requested
    • [ENG-1781] - StuckGateActor shouldn't complete GateTasks that have no dependencies or conditions
    • [ENG-1782] - Tasks stays in progress if attachment limit exception is thrown
    • [ENG-1794] - Wrong modal title when deleting comment
    • [ENG-1813] - Restart message after installing a plugin does not appear
    • [ENG-1823] - Value provider values are not displayed properly on first load
    • [ENG-1858] - Use read_committed transaction for H2

    Digital.ai Release 9.7.6 release notes

    Bug fixes

    • [ENG-1025] - [XL-CLI] Generating dashboards with filters exports templateId
    • [ENG-1040] - [XL-CLI] List box variable value can be default set to element which is not part of that list
    • [ENG-1894] - Scripts that output large amount of text could cause out of memory error
    • [ENG-1948] - The task modal title gets overflow for the skipped, locked and completed task
    • [ENG-1958] - Duplicate comments in TaskExecutionEvents
    • [ENG-2056] - Set correct JsonPath Configuration for JsonPathResult
    • [ENG-2070] - Script logs are not visible in attachments after aborting a task
    • [ENG-2110] - Filter's clear icon (X) is positioned incorrectly on the Triggers tab
    • [ENG-2114] - Trigger's template filter does not get cleared/removed properly
    • [ENG-2119] - Unable to test git repository that does not have branch called 'master'
    • [ENG-2147] - New template variables are not visible on edit trigger page
    • [ENG-2160] - Phase name showing Missing Value in Release Audit Report(Excel)
    • [ENG-2191] - Overdue tasks don't show up in tableview
    • [ENG-2193] - Inconsistency in character limit check in the description of the triggers
    • [ENG-2199] - Audit report job thread keeps on running in background on abort
    • [ENG-2203] - Bad padding and alignment on Teams & Permission screens
    • [ENG-2218] - Phase name goes out of text box in table view
    • [ENG-2235] - Browser console error on adding a new dashboard tile
    • [ENG-2249] - Increase length of the shortened task title
    • [ENG-2325] - Restart phase doesn't use the latest content of the task
    • [REL-9904] - User can click on 'Add to group' without permission
    • [REL-10285] - On ESC keypress, both task modal and comment delete modal are closed
    • [REL-10409] - Wrong color for time field on task modal

    Digital.ai Release 9.7.7 release notes

    New features

    • [ENG-2391] - Expose roleId in API
    • [ENG-2434] - Replace Jettison JSONObject with Jackson ObjectMapper when leniently loading Release JSON

    Improvements

    • [ENG-2311] - Make custom and script tasks save results asynchronously
    • [ENG-2934] - Add ability for asc/desc sort when searching releases
    • [ENG-3250] - Add a feature flag to remove restriction for encrypted value usage

    Bug fixes

    • [ENG-1866] - Refine release audit report for templates
    • [ENG-1984] - Random AccessControlException
    • [ENG-2393] - Disable test button in HTTP Endpoint For Webhooks shared configuration
    • [ENG-2418] - Fix default cron timezone for quartz
    • [ENG-2456] - Update summaries checkbox is not working for Jira Update Issues task
    • [ENG-2457] - Unable to create jira issue for EPIC issue type
    • [ENG-2490] - Unable to update release with duration set
    • [ENG-2512] - Pipeline icon on release overview is not visible for planned releases
    • [ENG-2627] - Fix spring security extension import for OIDC Plugin
    • [ENG-2751] - CompleteTask message to actor ignored because of GC
    • [ENG-2918] - Add proper permission check to delete the configuration
    • [ENG-3029] - Jira check issue task status is not updated from "in progress"
    • [ENG-3077] - Generate for as-code is not working when variable is used for a folder or template in create release task
    • [ENG-3227] - Fix HTTP 401 errors for logo with branding changes
    • [REL-9869] - Make sure tracked items names are case-insensitive in UI / tasks
    • [REL-10447] - Date variables inconsistency around milliseconds

    Digital.ai Release 9.7.8 release notes

    New features

    • [ENG-2733] - Move cluster messages in their own queue
    • [ENG-3304] - Make risk calculation and update independent of release actor
    • [ENG-3813] - Reduce number of teams/roles/permissions reads during task execution
    • [ENG-3852] - Change default value to false for Stuck gate detector
    • [REL-10477] - Reduced the number of release read counts when restarting a phase

    Improvements

    • [ENG-2962] - Add Role id as extension to GET release call [ReleaseApi]

    Bug fixes

    • [ENG-2244] - Missing template title on release properties page
    • [ENG-2417] - Fix update for an enum property values
    • [ENG-2604] - New lines in comment section are not rendered properly in notification email
    • [ENG-2803] - Environment reservation does not show selected applications if it contains a note
    • [ENG-2889] - Fix Inconsistent behaviour for releaseApi.restartPhase(release, True) Jython API call
    • [ENG-3026] - Tooltip component not wrapping the long character word
    • [ENG-3072] - Issue with Release archiving
    • [ENG-3226] - In progress orange arrow is missing on tasks screen
    • [ENG-3260] - Intermittent NPE applying YAML with gate tasks in template on clustered XLR
    • [ENG-3757] - Properties declared as reference to CI are not wrapped as dictionaries for ValueProvider
    • [ENG-3806] - Broken delivery properties screen for long pattern name
    • [ENG-3807] - Notifications are not sent to LDAP groups
    • [ENG-3822] - HTTP 400 error while exporting release audit report
    • [ENG-3825] - Task owner should not change after being completed in advance
    • [ENG-3826] - Folder owner wrong calculated for ldap group users
    • [ENG-3832] - As-code: can't import templates with scheduledStartDate in the future
    • [ENG-3841] - Duplicate releases on folder releases list
    • [ENG-3855] - Use UTF-8 on Jython HttpRequest
    • [ENG-4024] - Fix searchReleases public API
    • [ENG-4244] - Triggers uses old shared configuration after update on shared configuration

    Digital.ai Release 9.7.9 release notes

    Bug fixes

    • [ENG-3950] - Releases that are FAILURE_HANDLER_IN_PROGRESS are not recovered
    • [ENG-4260] - Watcher predictive text field not working
    • [ENG-4280] - FI-464 Template owner dictates release owner when release started from template
    • [ENG-4310] - Search not working when Adding non-exist user to Teams
    • [ENG-4409] - Custom logo and Design not showing properly in Email
    • [ENG-4636] - Changing the config in a duplicated dashboard causes changes in the config to all duplicated dashboards

    Digital.ai Release 9.7.13 release notes

    New features

    • [ENG-5251] - Featured Toggle: Send email to inactive users

    Improvements

    • [ENG-4816] - HttpRequest.py: Added option to disable certificate handshake

    Bug fixes

    • [ENG-1723] - Fixed: Discrepancy found while adding Jira Subtask type in XLR for input 'Issue Type Name'
    • [ENG-4593] - Jenkins plugin: task should fail if jenkins job is not found
    • [ENG-4759] - Deadlock on XLR_USER_PROFILES
    • [ENG-4957] - Fixed: Failure handler is not saving variables
    • [ENG-4959] - Fixed: MSSQL - deadlocks on deliveries
    • [ENG-5152] - Fixed: SET_OF_STRING field in template getting lost when template applied using CLI
    • [ENG-5216] - Fixed: Create Release tasks : Template selection pop-up
    • [ENG-5324] - Fixed: Script output attachment is truncated to 32kb

    Digital.ai Release 9.7.14 release notes

    Bug fixes

    • [ENG-5345] - Find or Create Delivery task—Fixed an issue that prevented users from viewing the Pattern/Stage information on Find Or Create Delivery tasks.
    • [ENG-5586] - Jetty—Removed server header from HTTP response headers.
    • [ENG-5631] - Fixed an issue that prevented Trigger creation when you import and apply an As Code YAML file that defines:
    • a Release Template and a time-based Trigger—wherein the template's name starts with "Release" and the trigger references this template
    • a Release Template and an event-based Trigger—wherein the template's name starts with "Release" and the trigger references this template
    • [ENG-5719] - Fixed an issue that prevented the user from exporting the Release Audit Report.

    Digital.ai Release 9.7.15 release notes

    Bug fixes

    • [ENG-5504] - Fixed the issue when a large number of environments are present, Deployment tile throws an exception.
    • [ENG-6420] - Updated and fixed the ‘User Input’ task detail view UI from two inputs to one and variable field to show the previously added value.
    • [ENG-6436] - Removed unwanted encoding of user input, which made special characters look garbled in Jira tasks.
    • [ENG-6618] - Fixed the issue: ‘Create Release’ task displays the release ID instead of title for the Root level template.
    • [ENG-6715] - Updated HttpResponse.class from str to unicode.
    • [ENG-6862] - Fixed the unfunctional Pop-Up menus (Help and Setting) on a Windows machine.
    • [ENG-7024] - Fixed the duplicate TaskPreconditionValidated deliveries by clearing the executionId on task.
    • [ENG-7072] - Fixed the issue when Webhook event has triggered with variables having DOT in the name.

    Digital.ai Release 9.7.16 release notes

    Bug fixes

    • [ENG-7175] - Fixed the issue by increasing the release column width in the release group.
    • [ENG-7186] - Fixed the issue where RolesApi#getRole() property did not return exact role name.
    • [ENG-7203] - Fixed the issue when StackOverflow exception while parsing regular expression for markdown causes Release shutdown.
    • [ENG-7282] - Fixed the Trigger failure causes serialization error in cluster mode.
    • [ENG-7283] - Fixed the Email notification task fails with the error "javax.mail.internet.AddressException: Illegal address in string''.
    • [ENG-7296] - Fixed the As Code Apply failing for Custom Script task when Synthetic Property is set as Empty.

    Digital.ai Release 9.7.17 release notes

    Bug fixes

    • [ENG-7142] - Fixed the issue of the Actor crashing in a task inside the group which is scheduled to start, but the group is not started.
    • [ENG-7155] - Fixed the template creation in Digital.ai Release.
    • [ENG-7412] - Fixed the Custom logo alignment in the Email Notifications Footer.
    • [ENG-7487] - Fixed the resolved usernames when showing the Roles page by removing the LDAP data search.
    • [ENG-7537] - Fixed the issue where Restricting os.path module for Jython script.
    • [ENG-7700] - Fixing the issue of application in XLR which does not appear in the Deployment Attribute.
    • [ENG-7730] - Resolved the As-code generated dashboards that are not resolving filters on all tiles.

    Digital.ai Release 9.7.18 release notes

    Bug fixes

    • [ENG-8052] - Fixed an issue for unknown ConfigurationItem property xlrelease.Attachment.release.

    Digital.ai Release 9.7.19 release notes

    Bug fixes

    • [FI-912] - Fixed an issue with the Release CLI that caused problems with template export/import.

    Digital.ai Release 9.7.20 release notes

    Bug fixes

    • [FI-943] - Fixed the "java.io.FilePermission" "/root/.postgresql/postgresql.crt" "read" reporting pool error.

    Digital.ai Release 9.7.21 release notes

    Bug fixes

    • [ENG-9015] - Fixed the incorrect Digital.ai Release component version in one of the database tables the XL_VERSION table.

      Important: If you are upgrading from one of the following Digital.ai Release versions, you must only upgrade to the latest patch release available for the version of Release you are upgrading to. For example, if you are on Digital.ai Release version 10.0.9 and planning to upgrade to the 10.3 version, you should upgrade to 10.3.8 or later versions of the 10.3 release. Here's the list of Release versions that are affected due this bug: Digital.ai Release 9.7.18, 9.7.19, 9.7.20, 10.0.7, 10.0.8, 10.0.9, 10.0.10, 10.1.6, 10.1.7, 10.1.8, and 10.1.9. The fix for the bug is available on these versions: Digital.ai Release 9.7.21, 10.0.11, 10.1.10, 10.2.10, 10.3.8, and 22.0.1.