What value addition does Bamboo provides for automation testers over Hudson/Jenkins??
Asked by Laks:

I am a Automation tester trying to schedule nightly builds through bamboo. I have my selenium test cases in a repository but i have no idea how to trigger/schedule a nightly build. Can someone guide me?


Answers:
author: Adam Myatt
body: This is part feature comparison, part opinion... :)

Here's my take...

Bamboo is part of the Atlassian tool suite and as such provides great cross-app linkage using "App Links".

See "Integrating Bamboo with Jira" : <http://confluence.atlassian.com/display/BAMBOO/Integrating+Bamboo+with+JIRA>

Jira App Links : <http://confluence.atlassian.com/display/JIRA044/Configuring+Application+Links>

One use is to use App Links and Gadgets to display Bamboo build metrics on a COnfluence page, or on a Jira Dashboard. You can link Builds in Bamboo to Code Reviews in Fisheye/Crucible or to Issues in Jira. This inter-application linking is a big selling point for the Atlassian tool suite and a big plus for Bamboo.

However, Hudson DOES have plugin to allow it to integrate with JIRA, COnfluence, Crowd, and Bamboo.

Both Bamboo and Hudson are relatively similar.

They both offer the following concepts (though the terminology varies in each tool) :

- Local and Remote Build Agents  
- Support for Amazon EC2 remote build agents  
- Ability to build multiple languages (Java, PHP, MS, etc.)  
- Ability to use Ant, Maven, Make, command-line builds, etc.  
- Ability to define parent/child relationships for projects.  
- Ability to Collect, Manage, Publish Artifacts  
- Ability for project-owner to specify SCM credentials  
- Ability to track each build's success/failure  
- Flexible build scheduling (cron, SCM polling, etc)  
- Basic build time/duration reports  
- Flexible email notifications of build failure/success  
- User/Group security model for projects.

Features of Bamboo that Outshine Hudson :

- Bamboo has a more sophisticated and pretty user interface.  
- Bamboo supports better parallelization of builds out of the box without a developer needing to know how to do it (though Hudson can accomplish roughly the same paralellization with additional effort and config).  
- Bamboo has a bit better user interface for interacting with and managing remote build agents, defining executables/capaiblitieson the build agents, etc.

Features of Hudson that Outshine Bamboo:

- Hudson has significantly more plugins to extend functionality  
- Hudson has a significantly more active developer community  
- Hudson can have a slightly easier learning curve for users who have never used a continuous integration server.  
- Hudson supports more SCM repositories than Bmaboo, specifically Serena, Synergy, MS Sourcesafe, StarTeam, and MS Team Foundation Server.

There are also lots of CT solutions out there. Here is a large comparison performed on many CT tools such as Bamboo, Hudson/Jenkins, Continuum, CruiseControl, Electric Commander, TeamCity, etc. : <http://en.wikipedia.org/wiki/Comparison_of_Continuous_Integration_Software>


author: SGD
body: For anyone interested, you can check out our list of 10 things Bamboo does better than Hudson/Jenkins. <http://www.atlassian.com/software/bamboo/why-switch>

And FWIW, Jenkins does have 400+ plugins - but a lot of those plugins cover functionality that Bamboo provides out of the box. Support for EC2, JIRA integration, pipeline visualization, aggregated test results... the list goes on.

Cheers!


author: MattS
body: Bamboo integrates really well with JIRA out of the box


author: TJ Baker
body: Jenkins is free, Bamboo costs for the use of it AND you have to also pay Amazon. Not sure the 10 things Bamboo does better can be justified.

comments: author: Sebastien Delcoigne
body: You don't have to pay Amazon unless you are using Bamboo on-Demand. You could always run a bamboo server on your infrastructure and run the builds yourself.


author: ReneR
body: Plans in Bamboo can have different Build "Triggering" Strategies:

\* Polling

\* Manual

\* Cron/Scheduled

See:

<http://confluence.atlassian.com/display/BAMBOO/Triggering+a+Plan+Build+Based+on+a+Schedule>

You'll need permissions to edit the Plan in question. If you don't see the "Configure Plan" pull down menu, you'll need someone to grant you the appropriate permissions.


author: Renjith Pillai
body: Just to stress on one point from Adam, Jenkins indeed has many plugins while trying to integrate tools like coverage, test results, memory analysis especially in C/C++ world. In that Jenkins clearly stays ahead.

But of course the user-interface and integration with other atlassian tools is great for Bamboo.


author: Joe Levis
body: At the end of the day, there is no silver bullet tool out there for every Organization. However, I think Bamboo outshines most of them, especially if you're already using JIRA and/or Stash or Bitbucket.

You can't argue with the fact that Jenkins is free. And yes, Jenkins has a lot of plugins that enable you to do pretty much whatever Bamboo does. But I lean towards Bamboo as the better tool because of 2 main reasons...

1. The Bamboo Deployment Project. When Atlassian introduced this feature, I believe Bamboo gained the upper hand in providing a seamless delivery pipeline, not just CI. Jenkins has the "Build Pipeline" plugin, but it doesn't match up to how you can easily enable Continuous Delivery in Bamboo. With Jenkins, push-button deployment is still thought of as a build step rather than an actual deployment pipeline. It comes down to the ability to manage deployments better. With Bamboo, you can deploy, rollback, and provide visibility into any product's deployment status better than Jenkins. It allows all stakeholders to have visibility into what version is where, when it was deployed, who deployed it, which tickets are included, and how it was deployed. Bamboo is just a well-designed, thought-out tool with the mindset of software delivery, not simply automated tasks.
2. Bamboo's cleaner and more intuitive UI. Let's face it, Bamboo's UI is just better. With Jenkins, I feel like I'm using something I would have designed back in highschool with HTML - not to mention the interface and flow of clickable options is clunky. I really think Atlassian did a great job of providing not just a visually-appealing tool, but one that is very streamlined for users.

Don't get me wrong, Bamboo has some improvements needed. But if you're going to match it up against Jenkins, I think it outshines its competition in adding value to an Organization.


Tags: jenkins

junit

selenium