Release Manual

    Upgrade instructions

    For upgrade instructions, refer to Upgrade XL Release.

    Important: If you plan to skip versions when you upgrade, ensure that you read the version-specific upgrade notes for each intermediate version. You may be required to perform manual actions as part of the upgrade.

    XL Release 6.0.0

    XL Release 6.0.0 release notes

    New features

    • [PLAT-413] - Add logging to the JCR garbage collector
    • [PLAT-429] - Add ShutdownListeners to XLR
    • [PLAT-434] - Document the supported setups in the new configuration format
    • [REL-2318] - Support variables of type drop-down list
    • [REL-3051] - Support adding tags to tasks
    • [REL-3078] - Support UI extensions in all parts of the navigation menu
    • [REL-3079] - Support permissions for UI extensions
    • [REL-3092] - Support release tags on Create Release task
    • [REL-3204] - Plugin development infrastructure
    • [REL-3279] - Create "Folders" page
    • [REL-3281] - Folder details page
    • [REL-3282] - Template overview in folder page
    • [REL-3361] - Delete a folder
    • [REL-3362] - Rename a folder
    • [REL-3367] - Move single template to another folder
    • [REL-3368] - Show list of releases started in this folder
    • [REL-3369] - Create template in folder
    • [REL-3395] - Expose folderApi to Jython scripts
    • [REL-3410] - Filtering on Release Overview and Templates in Folder Details
    • [REL-3463] - Combine Folder navigation and Folder details screens
    • [REL-3464] - Actions in Folder screen
    • [REL-3473] - Store templates and releases in folders in JCR
    • [REL-3481] - Remove tab navigation
    • [REL-3513] - New UI for permissions and teams
    • [REL-3514] - When moving a template, ask user what to do with teams
    • [REL-3515] - Show folder path on overviews
    • [REL-3541] - Permissions and accessibility of archived releases
    • [REL-3542] - Generate Folder and Release and Configuration IDs to be unique cross-repository
    • [REL-3543] - Use platform permissions and teams for folders
    • [REL-3544] - Support archived releases in a folder
    • [REL-3545] - Add "Edit triggers" permission
    • [REL-3547] - Ensure that JCR sessions are closed
    • [REL-3569] - Add browser titles for all pages
    • [REL-3608] - Implement "Edit folder" and "Edit template" permissions on the folder level
    • [REL-3631] - Remove the cluster-mode flag as we do not use Modeshape
    • [REL-3632] - Add "Edit folder security" permission
    • [REL-3633] - Add "View folder" permission
    • [REL-3640] - When moving a template, check security
    • [REL-3656] - Implement active/hot-standby configuration

    Improvements

    • [REL-3243] - Upgrade service wrapper
    • [REL-3349] - Remove flag from pipeline view when a dependency is set
    • [REL-3350] - Do not show variables when restarting a phase
    • [REL-3427] - Make Jenkins Build task resilient to network failure
    • [REL-3429] - Upgrade to Overthere 4.3.3
    • [REL-3432] - Import an exported template into a folder
    • [REL-3433] - Default folders: 'Samples' and 'Tutorials'
    • [REL-3491] - Do not run JCR garbage collection at the end of archiving job
    • [REL-3588] - Smart bulk save of changes in JCR for VariablesUpgrader

    API changes

    • [REL-3366] - Add API for folders
    • [REL-3378] - Create phases from public API

    Bug fixes

    • [REL-2703] - JCR "Unable to compare rows" exception occurs during archive process
    • [REL-2745] - Opening one collapsed Parallel Group opens them all
    • [REL-2887] - XLRelease480UpgradeVariables fails with "A variable already exists by key"
    • [REL-3116] - Restricted access is not enforced for Task Access settings
    • [REL-3213] - ConcurrentModificationException occurs during release archiving process
    • [REL-3229] - After a phase is restarted, the phase end date is removed
    • [REL-3230] - When archiving a release with dependencies, the archive database returns a 500 error
    • [REL-3234] - Running a Remote Script task without specifying a remote path results in NullPointerException
    • [REL-3242] - Cannot create release trigger with certain CRON commands
    • [REL-3244] - Cannot create variable with release.* when upgrading from XL Release 4.7.x to 4.8.x
    • [REL-3245] - Handle outgoing dependencies in Gate tasks when archiving releases
    • [REL-3322] - Memory leak in UI
    • [REL-3346] - When changing a task type takes a long time, the task window cannot be closed
    • [REL-3347] - Service wrapper does not respond to certain requests
    • [REL-3352] - Starting releases from two triggers that execute at the same time will fail after some time
    • [REL-3372] - Inconsistent behavior when a task depends on multiple other tasks
    • [REL-3392] - Failing label is not calculated correctly for nested tasks
    • [REL-3398] - JIRA tile cannot be added if a JIRA issue does not have an assignee
    • [REL-3422] - Template cannot be exported if user tries to export it more than once in the same view
    • [REL-3454] - XL Release does not recognize repository.keystore.password set in xl-release-server.conf
    • [REL-3472] - Error during archive of release with links
    • [REL-3489] - Archiving fails if there are duplicate tags in a release
    • [REL-3570] - Subrelease is archived with an invalid ID
    • [REL-3580] - XLRelease480UpgradeVariables fails with "ItemAlreadyExists"
    • [REL-3626] - Tasks hang while trying to send email when there is a connection issue with LDAP server

    XL Release 6.0.0 upgrade notes

    Release phase no longer shown on the release overview

    The current phase of a release is no longer shown on the Release Overview screen. This was done to enhance the performance of this screen.

    Redesigned permission system

    The XL Release permission system has been redesigned to allow for folder permissions. During the upgrade process, an upgrader will update the releases and templates in the system. This may take some time.

    If a release team refers to a global role that no longer exists, the upgrader will remove the reference. You can see this as a warning in the upgrade log. For example:

    XL Release permissions system was redesigned to allow for the new feature of folder permissions. Therefore an upgrader will run which will update all the releases and templates in the system. This can take a while. If some teams in some releases were referencing a global role which does not exist anymore, these references will be deleted. You can see what was deleted in the log files as warnings, for example:

    2016-09-20 09:37:40.225 [main] {} WARN  c.x.xlrelease.repository.Teams - The following role(s) do not exist: [Team Hammer]. They were removed from the team Template Owner (Applications/Release2457853/Team1584683).
    

    Contact XebiaLabs Support if you have hotfixes

    Before upgrading, check whether there are hotfixes installed in the XL Release hotfix directory. If hotfixes are installed, contact the XebiaLabs support team before upgrading.

    Known issues

    Items deprecated in XL Release 6.0.0

    Items removed in XL Release 6.0.0

    XL Release 6.0.0 new features

    Manage templates and releases with folders

    Folders provide an intuitive way to organize your templates and releases by project, by team, or by any other model that fits your organization. With folders, you can easily apply security settings to a large number of templates and releases by setting role-based access control at any level of your folder hierarchy. For information about folders, refer to Manage templates and releases using folders.

    Add tags to tasks

    You can now add tags to tasks in a template or release, and search by tag in the release table view.

    Create phases from the XL Release API

    You can now use the XL Release REST and Jython APIs to create phases in templates and releases. Refer to the REST API and Jython API documentation for more information.

    Run XL Release in active/hot-standby mode

    XL Release now supports active/hot-standby mode, which ensures that you have a highly available XL Release installation. Note that active/hot-standby mode requires you use an external database for the XL Release repository and the archive database, instead of in XL Release's embedded Derby database. For more information, refer to Configure active/hot-standby mode.