Large companies will find it particularly useful, but smaller companies and independent developers will not be able to afford the cost, and will not see many advantages compared to using an open source solution. However, having some software to handle continuous integration build servers as well as deployments, and doing this consistently between products, is absolutely essential.
GoCD is easy to set up. So if you just want to get some pipelines up & running quickly, & they're quite stable, or you can have many pipelines for different needs then GoCD is great. Still, if you only want to have a few pipelines, but with the flexibility to run them with different parameters dynamically, then Jenkins is better.
Continuous Deployment - you can use Bamboo to automatically build and deploy whenever there are changes in the source code.
Continuous Integration - by integrating the automated tests and the integration tests before deploying you make sure you know immediately if the latest code fits into the whole scheme of apps.
Integration with Jira and Bitbucket.
Flexibility with the program language used for builds: Maven, Ant, PowerShell, any command line tools.
Pipeline-as-Code works really well. All our pipelines are defined in yml files, which are checked into SCM.
The ability to link multiple pipelines together is really cool. Later pipelines can declare a dependency to pick up the build artifacts of earlier ones.
Agents definition is really great. We can define multiple different kinds of environments to best suit our diverse build systems.
Bamboo offers solid usability for teams looking for an integrated, scalable CI/CD solution, especially those using Atlassian tools. Its interface is intuitive for existing Atlassian users, and its focus on deployment automation makes it a strong option for continuous delivery. However, its complexity and cost may pose challenges for small teams or those new to CI/CD. Overall, Bamboo’s usability shines in environments where ease of integration and streamlined workflows are prioritized. Still, it may require more effort for teams unfamiliar with its setup or without dedicated resources.
Support for Bamboo has started lack a little over the years. Atlassian has been moving more towards Bitbucket Pipelines and away from the on-premise install of Bamboo. While the tool is still great, it may take a little bit of time to get a question answered by official support.
We chose Bamboo over Jenkins for 2 reasons - one, for its tight integration amongst all the products in the tool suite. We find explicit value in the traceability from JIRA issues all the way down to the Bamboo build that was triggered by the check in of those issues. The second reason was for support - we didn't want the burden of figuring out how to support Jenkins in our production environment, as can be the case with so many open source products.
I prefer using GoCD compared to Jenkins. The UI makes sense, I like the simplicity to hit the 'Play' button for a straightforward deployment of the 'Play +' if you need to override some settings when deploying whereas Jenkins, you have the whole page for each pipeline. The environment makes sense but can often confuse the user while GoCD simply has a drop-down to select your environment.
Settings.xml need to be backed up periodically. It contains all the settings for your pipelines! We accidentally deleted before and we have to restore and re-create several missing pipelines
More straight forward use of API and allows filtering e.g., pull all pipelines triggered after this date