Prevent plans from running simultaneously

I have two plans that use a shared resource, and which can't run simultaneously, even though there may be agents available to run them. Is there a way I can do this in Bamboo?

3 answers

1 accepted

1 vote
Accepted answer

I implemented a simple plugin to solve this problem a while back and have just gotten approval to open source it. Source and documentation can be found here:

This would still be better implemented within Bamboo core I think, but this plugin should do the job until BAM-2423 is implemented.

AFAIK sequencing is achieved based on agent availability. If you have multiple agents which can do the same work, I guess it will get started in parallel. Is it not possible that you have a single agent for this work so that it gets done in parallel? Use a custom capablity if needed so that the job looks for this specific agent for its work.

Thanks Renjith. See my response to Jobin as to why I can't do this.

Okie I understand. Will it be possible to pull out this particular job alone and make a new plan with this single agent? And trigger this new plan when the original one ends.

0 votes

I can think of a workaround. Configure both the plans to run on the same remote agent. Then only one plan can run at a time.

In order to restrict the plan to run on the same agent, add a custom capability to the agent with a unique key and then configure the plans to run only when the custom capability is present!

Thanks Jobin,

Using capabilities to run both plans on a single agent is not going to get the result I want, unfortunately. Each of the plans in question has numerous jobs that I *want* to be run in parallel across many agents (they are long running acceptance test jobs). It's just that I don't want jobs from the different plans intermingling.

I may look into writing a custom plugin for this if no other options.

Hi James, yep that pretty much sums it up - thanks!

In the meantime I'll look at doing it as a plugin.

Thats great. If you have any questions about plugin development, post them on Answers :)

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Tuesday in Statuspage

Introducing Statuspage Getting Started guides! First up: What is Statuspage?

Over the next several weeks we'll be sharing some of our Getting Started guides here in the community. Throughout this series of posts, we'd love to hear from customers and non-customers ab...

218 views 4 1
Join discussion

Atlassian User Groups

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

Find a group

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

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you