Release Manual 6.1.x

    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.1.0

    XL Release 6.1.0 is a short-term support (STS) version that will be supported until it is superseded by the next STS or long-term support (LTS) version. STS versions do not receive specific maintenance releases. For more information, refer to Short-term support/Long-term support policy.

    XL Release 6.1.0 new features

    Xfile: Groovy DSL for creating releases

    It is now possible to define releases in a Groovy-based DSL script. This allows you to store release definitions as code in version control and gives you programmatic control over a release when creating it.

    For more information about the DSL, refer to the XL Release DSL API.

    Improved XL Deploy task type

    The XL Deploy task type has been improved to take full advantage of XL Release's plugin features.

    Scheduled scripting for long running jobs

    Scheduling support is added for custom script tasks. You can now provide a script that starts a remote process and another script that will check if the process is finished. XL Release will schedule the execution of the scripts according to a configurable interval. If the server is stopped, XL Release will reschedule the script when the server is started again.

    For information about advanced Python scripting, refer to Using scheduling in scripts to connect to long running jobs.

    External Script and Groovy Script task types

    The new Groovy Script task type allows you to execute a Groovy script that is stored locally in XL Release.

    The new External Script task type allows you to execute a Python or Groovy script from an external location that is available via a URL, such as a Git repository.

    Support accelerator

    You can now easily gather data that will help the XebiaLabs Support Team troubleshoot issues. When you select Help > Get data for support, XL Release will create a support analytics ZIP file that you can sent to XebiaLabs Support when troubleshooting issues. The file contains information about your XL Release installation, including the contents of the conf, ext, plugins, hotfix, and log directories.

    XL Release will attempt to remove configuration passwords from the ZIP file. Please inspect the ZIP file contents to ensure that it does not contain passwords or other sensitive data.

    Task progress dashboard tile

    The Task progress dashboard tile, which was previously only available as a plugin, is now included in the standard XL Release distribution.

    XL Release 6.1.0 upgrade notes

    Limitation on custom script tasks

    The size of string output properties in script tasks is now limited to 32 KB for all task types. This prevents performance problems that can occur when, for example, a Remote Script task output contains megabytes of text. You can adjust this limit per task type; refer to Create custom task types for more information.

    XL Deploy tasks and servers refactored

    In XL Release 6.1.0, the XL Deploy task type leverages a new plugin APIs. Now, XL Deploy tasks are custom script tasks, and you manage XL Deploy servers in the same way as other shared configurations. Also, the task ID of a deployment is now an output property of the XL Deploy task type, so you can store it in a variable.

    Script task has been moved and renamed

    The Script task has been moved from Core group to a new group called Script and renamed to Jython Script.

    New server defaults

    The default values of server parameters such as memory, threads, and cache size have been updated to better suit production environment usage.

    Parameter Old value New value
    Heap size Maximum 1 GB Minimum 1 GB - Maximum 4 GB
    HTTP thread pool Minimum 3 threads - Maximum 24 threads Minimum 30 threads - Maximum 150 threads
    JCR cache Maximum 64 MB Dynamic, depending on heap size (approximately 1/10th)
    Service start timeout 60 seconds 120 seconds

    These new defaults apply only when installing XL Release for the first time; that is, when not copying configuration over from an existing installation. In that case, please ensure that your environment satisfies these new requirements.

    Contact XebiaLabs Support if you have hotfixes

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

    Items removed in XL Release 6.1.0

    Special XL Deploy variable types removed

    In XL Release 6.1.0, the XL Deploy task type is refactored for better integration with XL Release. To ensure that the XL Deploy task type provides robust functionality with high performance, the XL Deploy Package and XL Deploy Environment variable types have been removed. Existing variables of these types will automatically be converted to Text type variables during the upgrade process. The variables' values will be preserved.

    Because XL Deploy Package and XL Deploy Environment variables are no longer available, it is not possible for XL Release to auto-complete the names of deployment packages and environments in variables. However, the XL Deploy plugin for XL Release does support auto-complete in XL Deploy tasks.

    Removed support for Internet Explorer 10

    Microsoft Internet Explorer 10 is no longer supported as of XL Release 6.1.0. The latest version of Internet Explorer or another browser should be used instead. Refer to Requirements for installing XL Release for more information.

    Removed jenkins.Server pollInterval property

    The pollInterval property of the jenkins.Server configuration item has been removed because the polling interval for pollable custom script tasks is now configured globally in the xl-release.conf file. Refer to Create custom task types for more information.

    XL Release 6.1.0 release notes

    Version 6.1.0

    New features

    • [REL-1659] - Extract XL Deploy functionality into the plugin
    • [REL-2142] - Allow polling tasks to be aborted
    • [REL-2425] - Asynchronous scripts
    • [REL-2651] - Support enum types in custom tasks
    • [REL-3420] - Pluggable UI content for custom script tasks
    • [REL-3448] - Support Accelerator
    • [REL-3858] - Document how to store a DSL in the repository and have it create a release on commit
    • [REL-3880] - Allow plugin tasks to set status line
    • [REL-3921] - External Script task to run a script from a URL
    • [REL-3922] - Groovy Script task to run a Groovy script
    • [REL-3924] - Expose public API to Groovy script
    • [REL-3943] - Groovy DSL to create releases
    • [REL-3959] - Allow deletion of open dependencies on active Gate tasks
    • [REL-3965] - Bundle Task progress tile in XL Release
    • [REL-3968] - Configure polling interval on custom tasks
    • [REL-3982] - Groovy DSL: define variable section on release level and how to refer to variables from properties
    • [REL-3984] - Groovy DSL: refer to passwords
    • [REL-4014] - Ensure that passwords are not sent in clear text when editing server settings
    • [REL-4020] - Add External Script task DSL
    • [REL-4023] - Groovy DSL: Generated Documentation
    • [REL-4032] - Optimize calls that require fetching all Gate tasks with status
    • [REL-4046] - Remove support for XL Deploy package and environment variables
    • [REL-4049] - Define permissions for DSL
    • [REL-4097] - Support category names in synthetic.xml type labels
    • [REL-4121] - Update "Configure XL Deploy servers" for 6.1

    Improvements

    • [REL-1484] - Add ability to test connection for HTTP connection instances
    • [REL-3171] - Enable GZIP compression on application/JSON requests
    • [REL-3889] - Ensure that inherited permissions are taken into account when moving a template
    • [REL-3942] - Improve performance of dependency tree
    • [REL-3986] - Limit size of output properties of string type
    • [REL-4041] - Increase comment polling interval and make it configurable
    • [REL-4042] - New default server parameters
    • [REL-4045] - Allow dependencies to be added to running Gate tasks
    • [REL-4067] - Improve the External Script task type
    • [REL-4098] - Reorder items in the task type menu

    Bug fixes

    • [REL-2633] - Cannot fetch user name and email if two LDAP servers are configured
    • [REL-3335] - Page focus switches to the top of the phase when tasks change state
    • [REL-3752] - When teams with identical names are added to a folder, they cannot be removed
    • [REL-3831] - folderAPI is missing from Jython documentation
    • [REL-3895] - RESTEasy warning messages occur when user opens My Tasks screen
    • [REL-3954] - Task types are repeated on Task Access screen
    • [REL-4028] - Release summary tile shows incorrect duration when is release complete
    • [REL-4031] - Sample templates that contain a Gate condition do not work correctly
    • [REL-4036] - Adding folder should trigger event
    • [REL-4059] - The email sent when a release is completed does not include the folder path
    • [REL-4063] - NullPointerException when trying to modify a user with a hash symbol in the name
    • [REL-4091] - Dependency date estimations are not calculated if the release is in a folder
    • [REL-4104] - Start release and task assign emails for teams do not work as expected when release is started from a folder
    • [REL-4112] - LDAP group users in roles do not get correct permissions
    • [REL-4113] - Cannot start release with integer variable through public API
    • [REL-4120] - Release owner not set if you create a release using DSL
    • [REL-4122] - Release navigation comments are not added when the DSL has run as user set
    • [REL-4123] - "Release Admin" team is missing when creating release with DSL
    • [REL-4138] - Can't create a dependency with ID target syntax using DSL
    • [REL-4139] - External Script task should not check for unresolved variables
    • [REL-4142] - Clean up exceptions when URL is not complete for shared configurations
    • [REL-4145] - Create release task DSL variable syntax doesn't work for createdReleaseId property and missing docs
    • [REL-4146] - Task Ids are not correctly generated from the DSL
    • [REL-4148] - Teams members disappear when your adding a new team in a template
    • [REL-4152] - Timeline tile does not take dependency dates into account
    • [REL-4153] - PlanItem title should not be null when created from the DSL
    • [REL-4154] - Document how to use Create release task templateVariables