Bamboo 9.2 upgrade notes

Bamboo release notes

On this page

Still need help?

The Atlassian Community is here for you.

Ask the community

We’ve collected some important notes on upgrading to Bamboo 9.2. For details on all the new features and improvements we’ve introduced in this release, see the Bamboo 9.2 release notes.

Upgrade notes

While long-term support (LTS) releases don’t introduce any breaking changes themselves, they do consolidate all of the changes we’ve made to Bamboo ever since the last LTS release became available. However, because Bamboo 9.2 is our first LTS release, we’ve selected Bamboo 8.0 (our first Data Center offering) as the starting point for listing the upgrade notes.

For your convenience, we’ve gathered all the important information you should know about before upgrading right here:

Pushing to remote repositories with JGit no longer possible in Bamboo 9.2.14 and later

We’ve found a bug in Bamboo’s long-deprecated JGit feature that poses a risk to the integrity of repositories using the Large File Storage (LFS) extension. Because of the way we’ve implemented JGit’s push functionality in Bamboo, pushing local commits to LFS-enabled repositories may not work as expected. To prevent issues with file integrity, we’ve disabled pushing to remote repositories with JGit.

Bamboo’s JGit feature has never supported making any modification of the repository, including the creation of commits, branches, or tags. If you need this functionality, install native git.

Installing apps with the Universal Plugin Manager on Bamboo 9.2.11 and later

The Universal Plugin Manager (UPM) allows installing Atlassian and third-party apps in Bamboo and other Data Center products in three ways:

  • with the Upload app button on the Manage apps page where you provide a URL to the app or upload a file with the app
  • with the REST API (/rest/plugins)
  • with the Install button on the Find new apps page

In Bamboo Data Center 9.2.11, you can install new apps only by selecting the Install button on the Find new apps page. Installing new apps with the Upload app button on the Manage apps page or with the REST API is now disabled by default. This limitation prevents unwanted uploads of potentially malicious files to your Bamboo instance.

If you need to enable app installation with the Upload app button on the Manage apps page or with the REST API, set the following system property:


Learn how to set system properties

Bamboo 9.2.8 and later no longer ship with JDBC driver for the H2 database engine

To resolve several security vulnerabilities, the JDBC driver for the H2 database engine is no longer bundled with Bamboo 9.2.8 and newer. If you want to evaluate Bamboo using the H2 database, see Connect Bamboo to an H2 database.

Bamboo 9.2.7 and later require JDK 8u121 or later to run

If you want to run Bamboo 9.2.7 or later on Java 8, make sure that you're using JDK 8u121 or newer. Because Bamboo 9.2.7 uses deserialization libraries that require the sun.misc.ObjectInputFilter interface, older JDKs, which don't have that interface implemented, will prevent Bamboo from starting up.

Bamboo 9.1 upgrade notes

Bamboo now supports Bitbucket Data Center and Server 7.5 or newer only

In this release, we fixed a bug where restarting Bamboo while a build triggered from Bitbucket Data Center or Server was still running resulted in the build status in Bitbucket getting stuck in In progress indefinitely. However, the fix increases the minimum release of Bitbucket Data Center and Server supported by Bamboo.

From now on, Bamboo can integrate with Bitbucket Data Center and Server 7.5 or newer only. If you’re running an older release of Bitbucket Data Center or Server, consider upgrading your Bitbucket instance before upgrading to Bamboo 9.1.

Support for Large File Storage (LFS) files in Bamboo Specs is deprecated

In Bamboo 9.1, we’ve deprecated support for LFS files in Bamboo Specs and we’ll remove support for them entirely in Bamboo 9.3. As a result, Bamboo will process Specs much faster in source code repositories with the LFS extension enabled, even if you didn’t use LFS in your Specs before.

The SCP task no longer creates multiple nested artifact subdirectories

We’ve fixed a known bug that caused the SCP task to create too many nested artifact subdirectories. Now, the SCP task has full control over the artifact download location and no longer depends on the artifact subscription download path. However, this means that your artifacts may be downloaded to a different location than previously.

Bamboo 9.0 upgrade notes

Bamboo 9.0.1 and up

Bamboo now supports Bitbucket Data Center and Server 7.5 or newer only

In release 9.0.1, we fixed a bug where restarting Bamboo while a build triggered from Bitbucket Data Center or Server was still running resulted in the build status in Bitbucket getting stuck in In progress indefinitely. However, the fix increases the minimum release of Bitbucket Data Center and Server supported by Bamboo.

From now on, Bamboo can integrate with Bitbucket Data Center and Server 7.5 or newer only. If you’re running an older release of Bitbucket Data Center or Server, consider upgrading your Bitbucket instance before upgrading to Bamboo 9.0.1.

Bamboo 9.0.0 and up

Changes to notification webhook payload processing

Notification webhooks no longer support a payload for the GET and DELETE methods. Any payload content will now be discarded silently (that is, without an error message). The POST and PUT methods still work the same as before.

Learn more about using webhooks.

Enterprise Data Center Platform upgrade

Atlassian Platform is a set of components upon which we build our products. In Bamboo 9.0, we’re bumping up the Atlassian Platform to version 6 to benefit from the most up-to-date libraries and even better security.

Here’s a list of the most significant changes that you should be aware of to verify the compatibility of the apps you’ve built before upgrading Bamboo:

We built Bamboo 9.0 on top of Atlassian Platform 6.0, which introduces several significant changes that you should be aware of to verify the compatibility of the apps you’ve built before upgrading Bamboo.

Upgraded third-party libraries

We’ve upgraded the following third-party libraries for compatibility with Atlassian Platform 6.0:

  • jdom was upgraded to

  • guava was upgraded to 31.0.1-jre

  • json was upgraded to 20220320

  • rome was upgraded to 1.18.0

Upgraded platform components

We’ve upgraded the following components for compatibility with Atlassian Platform 6.0:

  • parent-poms was upgraded to 6.0.6

  • application-links was upgraded to 9.0.5

  • amps was upgraded to 8.4.2

  • atlassian-activeobjects was upgraded to 4.0.4

  • atlassian-annotations was upgraded to 4.0.0

  • atlassian-cache was upgraded to 6.0.1

  • atlassian-core was upgraded to 8.0.0

  • atlassian-event was upgraded to 5.0.1

  • atlassian-failure-cache was upgraded to 3.0.0

  • atlassian-gadgets was upgraded to 8.0.4

  • atlassian-healthcheck 1 was upgraded to 7.0.0

  • atlassian-httpclient was upgraded to 3.0.0

  • atlassian-oauth was upgraded to 5.0.2

  • atlassian-plugins was upgraded to 7.0.4

  • atlassian-plugins-webfragment was upgraded to 6.0.0

  • atlassian-plugins-webresource was upgraded to 6.0.3

  • atlassian-pretty-urls was upgraded to 4.0.1

  • atlassian-rest was upgraded to 7.0.1

  • atlassian-sal was upgraded to 5.0.0

  • atlassian-scheduler was upgraded to 4.0.0

  • atlassian-soy-templates was upgraded to 6.0.4

  • atlassian-spring-scanner was upgraded to 3.0.1

  • atlassian-template-renderer was upgraded to 5.0.2

  • atlassian-trusted-apps was upgraded to 6.0.0

  • atlassian-vcache was upgraded to 2.0.0

  • beehive was upgraded to 5.0.0

  • caesium was upgraded to 3.1.2

  • io.atlassian.fugue was upgraded to 5.0.0

  • upm-server was upgraded to 6.0.4

Bamboo migrates to Log4j2

We’ve migrated Bamboo to Log4j 2. This introduces changes to the configuration files that are described in the official documentation.

If you’re using a custom Log4j 1.x configuration with your Bamboo instance, you’ll need to manually migrate it to the Log4j 2.x configuration file format. See Migrating custom logging configurations to Log4j 2.

Atlassian User Interface (AUI) upgrade

Bamboo 9.0 updates AUI from 7.10 to 9.4. If your app uses any AUI resources or depends on libraries previously provided by AUI, here’s what you should know:

Because of the AUI upgrade, you might encounter some problems with your apps. See the following sections for more information on the most common issues and ways to fix them:

Issues with dependencies...
Issues with dependencies

Multiple web resources have been removed from the AUI library and are no longer shipped. Additionally, some web-resource key names were changed. See the Web-resource changes section in the AUI upgrade guide for a complete list of changes in the AUI web resources.

If you encounter errors like the following one, you may need to update your app’s dependencies:

Uncaught TypeError: (...) is not a function

If you still encounter such errors after updating your dependencies, then consider checking the order of resources in the <web-resource> section in your atlassian-plugin.xml file. Importing dependencies in the wrong order might also cause such errors.

jQuery UI is no longer bundled in AUI...
jQuery UI is no longer bundled in AUI

jQuery UI's interface components are no longer bundled with AUI. If your app depends on them, you need to either use the equivalent AUI component or import the specific jQuery UI components yourself.

If you decide to ship jQuery UI yourself, make sure that the library is shipped as an AMD module. Otherwise, your library might conflict with internal Bamboo dependencies.

Issues related to Backbone.js...
Issues related to Backbone.js

Backbone.js has been upgraded from version 1.0.0. to version 1.4.0. For more information, see the changelog. If your app relies on the version of Backbone.js shipped with Bamboo, you might encounter issues caused by changes in the library, such as:

  • Backbone no longer automatically attaches options passed to the constructor as this.options.
  • Backbone Models no longer attach url and urlRoot to options.
  • The order of initialization and registering events has changed. In particular, this means that you can no longer set collections in the initialize method and should either use the preinitialize method to set them or pass them directly in a constructor.
Changes to AUI .hidden class behavior...
Changes to AUI .hidden class behavior

In accordance to the AUI documentation, the .hidden class shouldn’t be mixed with jQuery show() and hide() methods. From now, mixing the .hidden class with those methods won't work anymore. Instead, you can do one of the following things:

  • toggle the .hidden class to show or hide the element
  • use the jQuery hide() method to hide the element and then use the show() method to reveal it
Accessing AUI elements in Webdriver tests...
Accessing AUI elements in Webdriver tests

Multiple HTML elements, like checkboxes or form fields, now require special handling in Webdriver tests. Use the com.atlassian.aui:aui-pageobjects dependency and classes from it to interact with the AUI elements inside Webdriver tests. For example:

import com.atlassian.aui.auipageobjects.AuiCheckbox;
@ElementBy(id = "createUser_enabled")
private AuiCheckbox userActive;
JavaScript Console warnings...
JavaScript Console warnings

The JavaScript console may throw multiple warnings. For example:

Use of `window.Backbone` through AUI is deprecated and will be removed in AUI 10.0.0
DEPRECATED JS - AJS.template has been deprecated since 8.0.0 and will be removed in 10.0.0. We recommend use of other open-source templating engines, such as "lit-html" or "react". If you cannot do without this templating function, it is available as its own Node package: "@atlassian/aui-template".
DEPRECATED JS - Inline dialog constructor has been deprecated and will be removed in a future release. Use inline dialog 2 instead.

Those warnings come from Bamboo and can be safely ignored.

Artifacts now support multiple copy patterns and exclusion patterns

Bamboo 9.0 supports adding multiple copy and exclusion patterns to artifact definitions.

This is a breaking change. If your apps use artifacts, make sure to adapt them accordingly (especially those that use the data provided by the Artifact downloader task).

Embedded Crowd upgrade

Bamboo 9.0 ships with Embedded Crowd 5.0. To find out what’s new in this Crowd release, head over to the Crowd 5.0 release notes.

Tomcat upgrade

We’ve upgraded Apache Tomcat to version 9.0.64. See the changelog.

Bamboo 8.2 upgrade notes

Lucene index removal

Bamboo no longer indexes data using the Lucene library. The API related to the Lucene index, which was deprecated since version 7.2, has also been removed. Make sure to verify the compatibility of third-party apps with Bamboo 8.2.

Remote agents wrapper support for Apple silicon

Bamboo 8.2 comes with an upgraded Tanuki wrapper providing support for Apple silicon. Remote Agents may require reinstalling the wrapper. For more details, see the Bamboo remote agent installation guide.

Removal of build warning parsers

In this release, we've upgraded the build warning parser library to a newer version that removes Clang-Tidy and RT Tests Parser from the Build warnings parser task.

Changes to custom Elastic Bamboo region configuration

If you use Elastic Bamboo with a custom AWS Region and have modified the Ec2ClientFactoryImpl bean configuration in applicationContextAgentServer.xml, update the configuration and add a signing endpoint to it.

Edit the <BAMBOO_INSTALL_DIR>/atlassian-bamboo/components/bamboo-web-app/src/main/resources/applicationContextAgentServer.xml file by adding the signing region alongside the custom endpoint to the Ec2ClientFactoryImpl bean configuration:

<bean id="awsAccountBean" class="" plugin:available="true">
  <constructor-arg ref="elasticAccountBean"/>
    <bean class="">
        <bean class="">
          <constructor-arg value="<custom endpoint url>"/>
          <constructor-arg value="<custom signing region>"/>
      <constructor-arg ref="elasticScheduledExecutorService"/>

Reusing Elastic Bamboo credentials in the S3 artifact handler configuration

The S3 artifact handler currently doesn't support instance profile credentials. If you configure Elastic Bamboo to use an IAM instance profile, update the artifact handler configuration and provide a separate AWS access key for it.

New Stock Elastic Images

The Stock Elastic Images bundled with Bamboo 8.2 come with a number of breaking changes:

  • Only images based on Ubuntu 20.04 LTS and Windows Server 2019 64-bit are provided. The Amazon Linux-based AMI is no longer available.
  • Stock AMIs now use HVM virtualization only. Images using PV virtualization are no longer available.
  • All images are now EBS-backed. Instance store-backed images are no longer available.

Additionally, all images have a limited set of capabilities. See the following sections for more information.

Ubuntu AMI capabilities

The ‘ec2-user’ account is no longer created on the Ubuntu AMI. If you need to access an EC2 instance started from the image, use the ‘ubuntu’ user account instead.

JDK 8/opt/jdk-8
JDK 11/opt/jdk-11
Maven 3.8/opt/mvn-3.8

Windows AMI capabilities

JDK 8C:\opt\jdk-8
JDK 11C:\opt\jdk-11
Maven 3.8C:\opt\mvn-3.8

If you want to try the new AMIs before upgrading, see the following list:


If you rely on capabilities that are not present in the new AMIs, you can keep using the old ones. However, because old AMIs won’t receive any security updates, we recommend migrating as soon as possible.

In addition, Stock Elastic Images are no longer guaranteed to be backwards compatible. All breaking changes will still be documented in the version-specific upgrade notes, but you shouldn't rely on installed capabilities or image configuration as they can change with each version. We recommend building your own Elastic Image instead.

See the list of previous Stock Elastic Images...

Previous Stock Elastic Images

image.US_EAST_1.S3.x86_64.linux.PV.Amazon\ Linux=ami-052968d3b353588da
image.US_EAST_1.EBS.x86_64.linux.PV.Amazon\ Linux=ami-0207018e91a500945

Bamboo 8.1 upgrade notes

Deprecation of the server-local artifact handler

The server-local artifact handler has been deprecated in Bamboo 8.1. Support for this artifact handler will be removed in the next Bamboo release.

Bamboo 8.0 upgrade notes

Changes to the home directory structure

As part of the cold stand-by capabilities of Bamboo Data Center, major changes were made to the home folder. As part of the upgrade, the home folder is split into two parts: one containing data that will be exclusive for each instance, and another folder that contains the files that will be shared among every node. Applying this change is required for using multiple nodes with Bamboo Data Center, but other types of Bamboo installations are also affected, including Server and single-node Data Center setups.

Before you upgrade, we recommend that you learn more about the changes to the home directory structure at Bamboo home migration.

Changes to the commons-io API 

The Commons IO library was upgraded from 2.6 to 2.8.0. It causes different behavior of the FileUtils.cleanDirectory method on Windows. The previous version was able to remove read-only folders, but commons-io 2.8.0 has a bug, which prevents the removal of a folder if it contains a directory with the read-only flag. App vendors should use com.atlassian.bamboo.utils.BambooPathUtils#cleanDirectory for directory cleanup.

Lucene API removal

The Lucene API was deprecated in Bamboo 7.2 and removed in 8.0. App vendors should use other places for data storage like Bandana or Active Objects.

Removed support for CVS and Mercurial

In Bamboo 8.0, we've removed support for CVS (deprecated in Bamboo 7.1) and Mercurial (deprecated in Bamboo 7.2). See Supported platforms for more details.

Remote agent wrapper support for Java 11

As part of the support for Java 11, you can upgrade Java used by remote agents from version 8 to 11. See the Bamboo Remote Agent installation guide for detailed instructions.

Connecting to MySQL databases

When connecting Bamboo to a MySQL database, make sure to use the correct version of MySQL Connector/J:

  • For MySQL 5.7 use version 5.1.49. Using a different version requires additional configuration options:
    • versions 5.1.48 and older require configuring TLS (by setting the connection string flag, for instance:  enabledTLSProtocols=TLSv1.2,TLSv1.1,TLSv1.0) due to deprecation of TLS 1.0 and 1.1
    • version 8.0.26 requires setting the nullCatalogMeansCurrent flag to true in the DB connection string
  • For MySQL 8, version 8.0.26 or later is recommended.

Code coverage plan settings are more strict

If plan configuration has Code coverage settings enabled, the build will fail if the file with coverage data is not found on build completion.

Changes to supported platforms

We’ve made a few changes to what platforms we support since Bamboo 8.0. If you’re upgrading from Bamboo 8.x or a previous 9.x release, check out the list of added, deprecated, and removed support for various platforms in the Bamboo 9.2 LTS change log .

Additionally, you may want to take a look at the following related pages:

How to upgrade Bamboo

See the Bamboo upgrade guide for a complete walk-through of the upgrade process that includes descriptions of all the available upgrade paths, prerequisites, and methods.

Last modified on Apr 30, 2024

Was this helpful?

Provide feedback about this article
Powered by Confluence and Scroll Viewport.