We have a Bamboo setup with about 30 build agents, and I have an incremental Gradle build. An incremental build benefits greatly from being run on the same agent every time. Is it possible to have make my build prefer its last build agent?
Workarounds:
(1) Create a Requirement so that my build only runs on a specific single agent. But that only works so far: Other builds will start on that agent, and my build will have to wait for those to finish.
(2) Create a Requirement so that my build only runs on a small set of agents. I will still lose a lot of the benefits of the incremental builds.
(3) Reserve a agent for my build only. My operations dept doesn't want to do this, as the agent will stay idle a lot.
So that leaves my question: is there a way for my build to prefer its last build agent, but switch to a different one if the last agent is busy?