Atlassian is proud to present Bamboo 5.10 EAP. This public development release is part of our Early Access Program (EAP) leading up to the official Bamboo 5.10 release. We are making these EAP milestones publicly available so that developers can start assessing the impact of the changes that we are making.
It is our intention to notify you, our plugin developers, as far in advance as possible of everything we know that could possibly affect your plugins. We will update this page as the release progresses, so please watch this page or check back regularly to keep on top of the changes.
Important
Development releases are snapshots of the ongoing Bamboo development process. For that reason:
Atlassian doesn't support any upgrade or downgrade path for EAP releases
Development releases represent work in progress and we cannot provide a supported upgrade path between development releases, or from any development release to the eventual final release.
EAP releases should not be used in production environments as they are not officially supported. For all production use and testing of Bamboo, please use the latest official release instead.
We're introducing the following changes:
Change
|
Comment
|
---|---|
JDK8 as a minimum runtime and compile requirement | Bamboo 5.10.x doesn't run or compile on JDK less than 8. Plugin developers can now use all new shiny Java 8 goodies including streams and lambdas. |
Bamboo runs on Tomcat 8 | Bamboo 5.10.x runs on Tomcat 8. For more information about upgrading your project configuration, see Starting Bamboo and running integration tests. |
Servlet API upgrade (3.0.1) | Bamboo 5.10.x runs on Tomcat 8 and therefore provides servlet API 3.0. Make sure that your plugin is compatible with the servlet API 3.0. For more information, see Building plugins against custom versions of Bamboo. |
Plugins framework (4.0.4) | This is an upgrade of the way in which Bamboo transforms and loads plugins. |
SAL upgrade (3.0.2) | For more information, see SAL 3.0 Upgrade Guide. |
Soy Renderer upgrade | The new soy compiler used by Bamboo is more restrictive when it comes to the template syntax. Make sure that your templates are properly compiling in runtime. |
REST 3.0 upgrade | We've upgraded REST to 3.0.2. |
For more information about API changes in the Bamboo 5.10 EAP, see API changes for Bamboo 5.10 EAP.
Follow the guidelines below and see the Known issues section to prepare for the upgrade.
To simplify testing against new Bamboo and maintain backwards compatibility, make sure that the plugin POM imports the component versions from com.atlassian.platform:platform
and com.atlassian.platform:third-party
.
1 2<properties> <bamboo.version>5.9.3<bamboo.version> <platform.version>2.21.3</platform.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>com.atlassian.platform</groupId> <artifactId>platform</artifactId> <version>${platform.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>com.atlassian.platform</groupId> <artifactId>third-party</artifactId> <version>${platform.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
Your dependencies shouldn't override the artifacts versions defined by Java Platform and should use the bamboo.version
property to specify the version of Bamboo to compile against.
1 2<dependencies> <dependency> <groupId>com.atlassian.bamboo</groupId> <artifactId>bamboo-api</artifactId> <version>${bamboo.version}</bamboo.version> <scope>provided</scope> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.atlassian.sal</groupId> <artifactId>sal-api</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-library</artifactId> <scope>test</scope> </dependency> </dependencies>
Testing compile-time compatibility with Bamboo is as simple as:
1 2mvn clean test -Dbamboo.version=5.10.0-beta01 -Dplatform.version=3.0.4
To start Bamboo and run integration tests against Bamboo 5.10, AMPS needs to be instructed to run Tomcat 8 as a container with the containerId
configuration parameter:
1 2<build> <plugins> <plugin> <groupId>com.atlassian.maven.plugins</groupId> <artifactId>maven-bamboo-plugin</artifactId> <version>${amps.version}</version> <extensions>true</extensions> <configuration> <productVersion>${bamboo.version}</productVersion> <productDataVersion>${bamboo.data.version}</productDataVersion> <containerId>tomcat8x</containerId> </configuration> </plugin> </plugins> </build>
Then running integration tests is as simple as:
1 2mvn clean integration-test -Dbamboo.version=5.10.0-beta01 -Dplatform.version=3.0.4
In case of more complicated POMs, you might consider using POM profiles to separate dependencies and AMPS configuration.
If your plugin tests contain WebDriver or wired tests, it should use the following dependencies:
1 2<!-- Atlassian Webdriver dependencies --> <dependency> <groupId>com.atlassian.browsers</groupId> <artifactId>atlassian-browsers-auto</artifactId> <version>2.6</version> <scope>test</scope> </dependency> <dependency> <groupId>com.atlassian.selenium</groupId> <artifactId>atlassian-webdriver-core</artifactId> <version>2.3-m8</version> <scope>test</scope> </dependency> <!-- wired test runner dependencies --> <dependency> <groupId>com.atlassian.plugins</groupId> <artifactId>atlassian-plugins-osgi-testrunner</artifactId> <version>1.2.3-bamboo-5</version> <scope>test</scope> </dependency> <dependency> <groupId>javax.ws.rs</groupId> <artifactId>jsr311-api</artifactId> <version>1.1.1</version> <scope>provided</scope> </dependency> <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.2.2-atlassian-1</version> <scope>provided</scope> </dependency>
If the plugin has no integration test or if you just want to run Bamboo with the plugin loaded, use:
1 2atlas-debug -Dbamboo.version=5.10.0-beta01 -Dplatform.version=3.0.4
The features won't cause any breakages and will be announced with the official Bamboo 5.10 release.
Rate this page: