You're on your way to the next level! Join the Kudos program to earn points and save your progress.
Level 1: Seed
25 / 150 points
1 badge earned
Challenges come and go, but your rewards stay with you. Do more to earn more!
What goes around comes around! Share the love by gifting kudos to your peers.
Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!
Join now to unlock these features and more
We have a build plan that take around an hour to execute. If there are multiple commits while a build is running bamboo joins these commits together in the next build instead of separately building each commit in its own build. Is there a setting to change this behaviour so that there is one build for each commit?
There is, indirectly. You're looking to be able to set multiple concurrent builds, I think. Note that this is a global setting that you can override at the plan level, if you want. You can find that setting at:
Note that you can set that to a discrete (but fixed) number. If you are planning on having dozens/hundreds of commits per <build time execution time unit (hour in your case)>, then you're probably going to want to rethink how your build is structured to shorten the time of the build by as much as possible.
Note also that the artifacts from every build (and logs, etc) need to be stored separately, so make sure you understand your space/storage constraints, too.
thanks for your reply!
The number of commits is not particularly high in our scenario so we rarely get more than 2 or max. 3 commits combined in build. But I would still prefer to keep the commits strictly separate.
Just to make sure I understand this correctly. If we enable concurrent builds, bamboo would instantely start a new build with only that commit instead of letting the commits queue up and then putting them all together in a new build? How does this behaviour change if we enable concurrent builds but only have a single agent capable of running that build (which is our current setup). Will the commits get combined again or does bamboo start several builds which will then get queued after each other?
We don't use concurrent builds in our organization, and we've abstracted all of our build agents to be the "same" (basically, all agents have only java [to run the agent] and configured docker to run whatever image is needed to support each build's capability), so unfortunately, I can't help you with that. However, it's pretty easy to test that out in a test environment :)
Enabling concurrent builds does not _guarantee_ the commits are not 'joined' into a single build but reduces the occurrence of it.
The cases while it still might not work is when Bamboo is not able to react fast enough for the commits happening in quick succession.
It sounds like it should work for you as 2-3 commits per hour is not a problem for Bamboo to handle under normal circumstances.