Today we have a guest post from Himanshu Chhetri, a developer at Addteq (an Atlassian Expert) who works with the Configuration Management and Atlassian Solutions delivery teams. In his free time he likes to keep up to date with the latest open source projects and the devops movement.
At Addteq, we have a growing list of projects that we automate using Bamboo including our website deployments, mobile apps, J2EE project builds and others. We’re very excited about the latest iteration of Bamboo now that it has added deployment projects to keep track of which versions deployed to various environments.
#1: JavaMelody Monitoring Plugin
- A summary indicating the overall number of executions, the average execution time, the cpu time and the percentage of errors.
- Percentage of time spent in the requests for which the average time exceeds a configurable threshold.
- Complete list of requests, aggregated without dynamic parameters with, for each, the number of executions, the mean execution time, the mean cpu time, the percentage of errors and an evolution chart of execution time over time.
- Mean number of sql executions and the mean sql time.
- etc…
All of this data is also presented in the form of pleasant looking and easy to decipher graphs like the example below:
#2: Heroku Deploy Plugin for Bamboo
The Heroku Deploy plugin makes it even more convenient for Bamboo users to be able to deploy by simply adding a “Deploy WAR artifact task”. There is an extensive post on the Atlassian Bamboo blog that goes into detailed coverage about this plugin. My recommended way of taking this plugin for a spin is to build an open source project like OpenTripPlanner using the builtin Maven Bamboo task and then using the Heroku plugin to add the Deploy War task to instantly deploy the webapp.
As of the date of writing this blogpost there seems to be no announcement for supporting Bamboo 5 but hopefully this will be remedied soon.
#3: Bamboo iOS, Cocoa and Xcode Support
While the iOS app store might be one of the most robust application delivery platforms in the world, deploying iOS applications to testers continuously over the air is a bit of a challenge due to Apple’s well justified strict policy for prohibiting unsigned code from being executed. A good companion to the Xcode plugin is the TestFlight service that has a REST API for distributing apps to testers. Using the robust “Script” task in Bamboo to execute a script to upload the iOS app artifact to TestFlight enables testers to receive regular builds and provide feedback to developers in a frictionless manner.
The change-log for this plugin looks exciting with newly added features like support for executing tests in the iOS simulator and Bamboo 5 compatibility.
#4: Bamboo Continuous Plugin Deployment
Thankfully, the developer recalled that we had setup the deployment of this particular Confluence plugin to a test environment using the “Bamboo Continuous Plugin Deployment” which automatically deploys a Confluence or Jira plugin to a remote instance. To make the code change, the developer was able to use Atlassian Stash since we were experimenting with the realtime editor plugin. Bamboo faithfully deployed the new version of the plugin to the test environment which the developer was able to use to validate the bug fix. Finally, the developer downloaded the plugin jar file from the artifact section of the Bamboo build and sent the patched version to the grateful users.
#5: REST Add-on for Addteq’s Stix Mobile Application
- Check the status of all of your projects on your Bamboo server.
- View details of a specific build.
- View statistics of your projects presented in easy to read graphs.
- Want to find out why the build was triggered? Why it failed? You can take a look at what files changed and who changed them.
- You can check the log file broken down into the important elements to let you find out what happened quickly.
- After checking the cause of a build failure, you can even tell the server to restart the build directly from the app.
- Post comments on Bamboo builds!
The only pre-requisite for accessing all of the features of Stix is to install the companion Bamboo plugin into the instance you want to connect to. Currently the add-on is officially supported for Bamboo 4 and support for Bamboo 5 is underway!
And there you have it! You can read more about these plugins on the Atlassian Marketplace. There you will be able also to find info on many more useful plugins and extensions. Even if you don’t find a particular plugin your looking for, keep in mind, Atlassian Experts, such as myself are always standing by to help build and customize your Atlassian tools to suit your needs.
