It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Bamboo multi-configuration plans

With some automated build systems I've used in the past I've seen plans and configurations as separate concepts. With Bamboo they are one and the same.

What I mean is having some way of applying multiple configurations to the same build plan, in order to build the same plan with different compilation settings and/or for different platforms. I find this incredibly cumbersome with Bamboo at the momement, and it doesn't scale well for a large set of configurations.

What I would like to see is a way of specifying configurations separately from plans. Each configuration has a set of agent requirements and a set of key-value properties which can be substituted in a plan. Each (configurable) plan has a set of enabled configurations. The combination of plans and configuration is equivalent to the current notion of a plan. In my mind it sounds quite simple and straight forward, but I think there might be some issues with how to deal with plans triggering other plans (e.g., either by triggering when all configurations have completed, or triggering equivalent configurations in dependent plans).

Are there any plugins or planned features that can achieve this?

5 answers

I'm looking for the exact same feature. It's better explained on Jenkins' wiki: https://wiki.jenkins-ci.org/display/JENKINS/Building+a+matrix+project

Is there anyway with the current version of Bamboo to get the same feature? I really like the way it is done in Jenkins though; it's so simple.

The feature request mentianed above (BAM-907) was resolved in BAmboo 4.0 with the introduction of plan branches. That doesn't cover matrix testing though. :(

  1. BAM-9189 was resolved at the same time it seems. Also due to the introduction of Plan Branches.

There is a feature request to implement templating for Plan configurations which would allow you to have a "master" Plan that all other Plans take their configuration from.

Would using Plan variables to abstract the configuration you want to change and then run a parameterised build with the variable values you wish to override work for your usecase?

Aren't the parameterized builds only available when you manually trigger a build? That wouldn't be workable. My configuration proposal would probably boil down to something similar except the parameters and their values are named as a configuration and plans are combined with these predefined configurations to produced the configured/parameterized plans. Including agent requirements is obviously also important since not all configurations may build on all agents.

Bottom line I think configuration and build steps are two orthogonal concepts which are currently merged into one to the detriment of the managbility of plans in large multi-configuration environments.

Our code base is multi-platform, especially our game engine. Some code only builds on Windows, some on Linux. I need to be able to exercise our whole build on both platforms as a prerequisite to running unit tests. If the code breaks on one platform but not the other, we need to detect that. Also different C++ toolchains will conform to the standard differently than others. It helps you create a more robust codebase to build against different platforms and toolchains.

Definitely need to see the ability to build the same plan on multiple agents (some agents are on Windows, some are on Linux).

Suggest an answer

Log in or Sign up to answer
Community showcase
Published in Bamboo

Unable to add or edit Bitbucket Cloud repository in Bamboo

On 31 May, a GDPR-related change went live in the Bitbucket Cloud API that resulted in users not being able to create or edit Bitbucket Cloud Linked repositories in Bamboo. This API update removed t...

307 views 2 6
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you