XL Deploy 4.0.0 and XL Scale 4.0.0 released


XebiaLabs Support -

Dear XebiaLabs community,

We are pleased to announce the release of XL Deploy 4.0.0 (formerly known as Deployit) and XL Scale 4.0.0 (formerly known as the Cloud Pack) and a host of updated plugins. Before upgrading carefully review the release notes and upgrade manual.


  • Declarative parallel deployment support:
    • Deploy to many servers in parallel with the push of a button using your existing packages, environments and plugins.
    • Support for different parallel orchestrators, including "parallel by container", "parallel by composite package" and "parallel by deployment group".
    • Support composition of orchestrators.
  • Declarative staging support:
    • Configure a staging directory and check a box to stage files to target servers before the deployment starts.
    • Works out of the box for all your plugins and deployments.
  • Support for scheduled deployments:
    • Prepare a deployment ahead of time and get it executed when load on your application is low.
    • See and interact with scheduled tasks in the task monitor.
  • Improved UI performance and resource utilisation.

Important upgrade instructions

There are three important changes you should be aware of before installing XL Deploy:

Additional Improvements since Deployit 3.9.0

  • [DEPL-2157] - Included empty synthetic.xml in the ext directory
  • [DEPL-2306] - Added ability to update a discovered topology
  • [DEPL-3359] - Allow user to define the repository location during DAR import
  • [DEPL-3487] - Inject previousDeployed instance in the freemarker context in the generic plugin
  • [DEPL-3569] - Obfuscate cli.password property in CLI configuration file
  • [DEPL-3570] - Document that the CLI configuration file must be called "deployit.conf"
  • [DEPL-3792] - Include overthere documentation in the remote plugin documentation
  • [DEPL-3828] - Use different credentials to start/stop a container
  • [DEPL-4039] - Added ability to generate a virtual deployable type
  • [DEPL-4256] - Ignore empty tags
  • [DEPL-4315] - Add support for z/OS
  • [DEPL-4354] - Ask user for confirmation when moving a CI
  • [DEPL-4383] - Added ability for a packager to specify the placeholder format in the manifest
  • [DEPL-4473] - Added a .NET/IIS application in the deployit-server distribution
  • [DEPL-4530] - Ported "options" approach from powershell-plugin to generic-plugin
  • [DEPL-4603] - Make services.Repository returns artifacts when invoked from a contributor or a step
  • [DEPL-4604] - Allow nested container to be started, stopped and restarted
  • [DEPL-4620] - Add ability to send HTML email notifications from trigger plugin
  • [DEPL-4621] - Add ability to generic Containers to upload classpath and templated resources for stop/start actions
  • [DEPL-4622] - Add ability to generic control task delegate to manage classpath resources, resolving host and executing multiple steps.
  • [DEPL-4625] - Username field does not have focus on login screen
  • [DEPL-4652] - Added autoPrepareDeployeds to CLI, REST API and GUI
  • [DEPL-4660] - Added detection of UTF-8 and UTF-16 text files with BOMs in deployable artifacts and preserve their encoding during placeholder replacement
  • [DEPL-4661] - Added detection of UTF-8 and UTF-16 text files with BOMs in the plugin templates and scripts and read them with the correct encoding
  • [DEPL-4662] - Add property to DeployableArtifact that specifies character encoding of the file(s)
  • [DEPL-4667] - Removed PDF documentation from the release
  • [DEPL-4733] - Added a way to find DeployedApplication given Environment and package to REST
  • [DEPL-4742] - Added ability to resize/maximize balloon window and other popup windows
  • [DEPL-4775] - int properties defined in CI's in java cannot be optional. Optional integer properties defined in the synthetic.xml are now properly optional.
  • [DEPL-4800] - Set of CI kind in DIP does not remove item when selected
  • [DEPL-4808] - Add global permission report#view so access to reports can be restricted
  • [DEPL-4811] - Add support for "classpathResources" to BaseExtensiblePowerShellDeployed
  • [DEPL-4837] - Update bundled-plugin documentation to include examples in XML manifest format
  • [DEPL-4859] - Add "executeModifiedScripts" and "executeRollbackForModifiedScripts" properties to ExecutedFolder CI in to support running modified SQL files.
  • [DEPL-4881] - Set checkpoint after first SQL script executed
  • [DEPL-4893] - Set properties of a deployed application from matching properties on a udm.Version (deployment package)
  • [DEPL-4911] - Give warning for required asContainment properties of SET_OF_CI, LIST_OF_CI
  • [DEPL-4940] - Add winrs-backed implementation of WinRM
  • [DEPL-5008] - Run multiple PowerShell scripts in a single PowerShell session
  • [DEPL-5011] - Improve description of generic containers in generic plugin documentation
  • [DEPL-5012] - Description of Manual Process has a typo (inststructions)
  • [DEPL-5050] - Document that values from EncryptedDictionary are not resolved in plaintext properties
  • [DEPL-5053] - Allow symlinking of cli.sh and server.sh scripts to other locations
  • [DEPL-5057] - Not possible to specify a proxy for the cli
  • [DEPL-5059] - Provide more fine-grained control over stopping and starting containers
  • [DEPL-5072] - Allow static Java methods to be invoked from FreeMarker templates
  • [DEPL-5073] - Add localShellScript and localShellScripts delegates
  • [DEPL-5228] - Added REST API to get the effective dictionary for an environment.

Bugs fixed since Deployit 3.9.0

  • [DEPL-3381] - Empty tags (tags containing only spaces that are stripped) should not be allowed
  • [DEPL-3558] - Execution of PowerShell steps on localhost hangs
  • [DEPL-4147] - Validations on Embedded deployeds do not work properly in the UI
  • [DEPL-4159] - Python daemon (wsadmin/wlst) does not work with WinRM. Upgraded to Overthere 2.2.2.
  • [DEPL-4347] - The "Deployments done in a date range" report only shows names
  • [DEPL-4411] - Import package button not visible when package name is long
  • [DEPL-4449] - Unnecessary unsaved changes warning when opening editors with large text input fields
  • [DEPL-4456] - When (de)selecting tabs with long titles, the tab positions jump around a lot
  • [DEPL-4494] - Error message "Key must have a value" badly worded
  • [DEPL-4503] - Task reassignment completion message is confusing
  • [DEPL-4505] - Task monitor is not resized when the browser window is resized
  • [DEPL-4507] - "Blue arrows" are drawn starting from virtual right hand side of the list of deployables
  • [DEPL-4509] - No progress indicator shown while task preview is generated
  • [DEPL-4545] - Buttons on step list (skip,stop,abort, etc.) should be disabled once pressed and processing is busy
  • [DEPL-4569] - NPE when using a host template without marker file connection options
  • [DEPL-4572] - REST API is not backwards compatible with 3.8.x clients
  • [DEPL-4575] - Task recovery file not removed when task is cancelled
  • [DEPL-4589] - The CreateOptions & ModifyOptions properties should be hidden
  • [DEPL-4593] - If excludeFileNamesRegex matches the name of the uploaded ZIP for a folder, nothing is scanned
  • [DEPL-4598] - Subpermission names (e.g. deploy undeploy) do not render on narrow screens
  • [DEPL-4602] - sql.SqlScripts doesn't take the destroyOrder into account when destroying
  • [DEPL-4613] - Generic Plugin - Add ability to resolve set_of_string values to values stored in other properties.
  • [DEPL-4616] - Pending tasks should be archived to prevent to lose them if the deployit server restarts
  • [DEPL-4619] - NPE when generating a deployed with embedded deployeds for a deployable that has no embedded deployables
  • [DEPL-4624] - Fixed storing of embeddeds
  • [DEPL-4627] - Opening history comparison for deployed throws PathNotFoundException: $configuration.item.type
  • [DEPL-4633] - Special characters ($ and `) are not escaped in PowerShell strings
  • [DEPL-4635] - Error or incorrect behaviour on update to package that adds or removes embeddeds
  • [DEPL-4642] - Old-style 'DeploymentStep' steps causes exception during planning
  • [DEPL-4656] - Check connection fails for overthere.SshHost with SUDO connection type
  • [DEPL-4664] - Tooltip mentions magic placeholder values <EMPTY> and <IGNORE> but should be <empty> and <ignore>
  • [DEPL-4701] - Tighten permission checks in Task Web Service
  • [DEPL-4705] - Rollback of an update deployment is incorrect
  • [DEPL-4706] - Duplicate type definition accepted
  • [DEPL-4717] - Closing a control task window does not cancel the task
  • [DEPL-4718] - MSSQL wrapper script should not add transaction
  • [DEPL-4725] - Repository Garbage sometimes can not be started (again)
  • [DEPL-4734] - ItemConflictException when rolling back a deployment with an embedded CI
  • [DEPL-4739] - RuntimeException: java.lang.ClassCastException [/deployment/validate]: com.xebialabs.deployit.engine.api.dto.ValidatedConfigurationItem cannot be cast to com.xebialabs.deployit.plugin.api.udm.Deployed
  • [DEPL-4743] - Import breaks with large file.Folder artifacts
  • [DEPL-4753] - Workdirs are not cleaned up after a task has finished
  • [DEPL-4776] - Deployit does not shut down properly via REST call
  • [DEPL-4778] - Default admin password is not set in complete setup mode
  • [DEPL-4799] - User cannot authenticate against LDAP if member of a group containing a special character
  • [DEPL-4812] - Python daemon does not work over TELNET connections when connecting from a Windows machine
  • [DEPL-4828] - When no BOM is detected, the default charset is used
  • [DEPL-4853] - Fix overlapping 'Full Screen' and 'Close Window' icons
  • [DEPL-4861] - Check connection task succeeds even for non-zero exit code of the command
  • [DEPL-4883] - Exceptions are not properly printed when a CLI Python script is run using the -f flag
  • [DEPL-4886] - Fix placeholder replacement in folder artifacts named as x.zip
  • [DEPL-4891] - Long names not well visible in Release Dashboard pipelines
  • [DEPL-4904] - Timer already cancelled
  • [DEPL-4949] - Username and password not used when deploying to sql.Db2Client
  • [DEPL-4969] - Do not call validator when optional property is not filled in
  • [DEPL-4998] - Add ability to connect to DB2 with a specific user
  • [DEPL-5001] - Update packaging manual with embedded CIs in XML manifest format
  • [DEPL-5009] - Python daemon fails in some setups since Deployit 3.9.3
  • [DEPL-5055] - Checksums are written excluding leading zeroes

Kind regards,

   The XebiaLabs Team.

Have more questions? Submit a request