can i configure bamboo plan branching to exclude running a job on the master branch?

I have a plan that i want to run no feature branches but i don't really want the plan to run on the master. Is there a way of configuring this>

7 answers

1 accepted

ok so the answer that i found that works (in case anyone else is interested) is to insert the regular expression ^((?!master).)*$ into the "Only Create Branches that Match" field on the branch configuration tab

This method didn't work for me.  Bamboo did not use this regular expression to exclude branches.

Yes, you can configure your plan branch to use any repository branch you want to. For more information, please refer to this page.

By the way, if you just want to checkout from the master branch and don't need other branch plan featuers, you can configure a specific branch (by default Bamboo uses the master branch) on the repository configuration page of a regular plan. For instance, if you use Git, you can specify the branch in the Branch field as it's mentioned in the documentation.

Cheers,
Armen

ok so the answer that i found that works (in case anyone else is interested) is to insert the regular expression ^((?!master).)*$ into the "Only Create Branches that Match" field on the branch configuration tab

Hi Armen

I have a list of jobs, build&package, deploy to dev , deploy to stage etc. How can I configure the branch only run the first job - build & package, not the rest of the jobs?

Thanks

Hi Vincent,

Currently Bamboo doesn't support conditional flow controls. You can achieve a similar goal by splitting your current plan into 2 plans (the one that contains the build & package part, and the other one that contains the rest). Next, add a Script task to be the last task in your first plan. In your script task write a small script that will check the plan variable that returns the branch name (bamboo.repository.branch.name), and if the branch name is not a specific one, use this command to trigger the second plan:

curl -X POST --user admin:admin "http://localhost:8085/rest/api/latest/queue/FOO-BAR?executeAllStages=true"

where "admin:admin" is the username and password, and "FOO-BAR" is the plan key you want to trigger. I know this doesn't look the exact action that you ment, but as I said, Bamboo doesn't support conditional controls.

Cheers,
Armen

I would not recommend the above if using Bitbucket (or Stash) with Pull Requests.  

Only the very first plan triggered by a code change will then report a "Successful Build" to Bitbucket; therefore someone could easily think a build was successful, only to find that the subsequent plan actually failed.

These steps work in Bamboo 5.12.  I have no idea what other versions of Bamboo are like.

1. In the Bamboo build plan, navigate to the Branches tab and select "Create plan branches for matching new branches" and add a regular expression, for example "^feature/".  Or you can select "Create plan branches for all new branches" and skip the regular expression.

2. If there isn't already a branch plan for master, add it manually using the "Create plan branch".

3. Navigate to the Branch details tab for the master branch plan and change the trigger type to manual.

sorry that should read...

I have a plan that i want to run feature branches on but i don't really want the plan to run on the master. Is there a way of configuring this?

Hi

I have a list of jobs, build&package, deploy to dev , deploy to stage etc. How can I configure the branch only run the first job - build & package, not the rest of the jobs?

pic1

Anyone can give a suggestion?

I'm trying to configure a plan to exclude branches that start with "hotfix". I'm using "Only create branches that match" "^((?!hotfix).)*$", but that plan still executes on branches like hotfix/ABC or hotfix-ABC.

Is this a bug on Bamboo or my regexp is not right (although all regexp parsers exclude strings like hotfix/ABC or hotfix-ABC on that regexp)?

Hi Ciprian,

The regex is for creating plan branches, not for running them. If you create a branch in your repository and you want Bamboo to detect and automatically add the corresponding plan branch, that's when the configured regex will be used. However, if the plan branch is already created in Bamboo, the branch will run whenever it's triggered. Makes sense?

Armen

Hey!

Thanks for your reply. So I'd have to delete the plans created automatically and new ones that don't match the regex should not be created automatically, right?

Ciprian

You are right, Ciprian. You need to remove the old plan branches that shouldn't have been added to Bamboo. The new correct branches that you create in your repo will be added to Bamboo based on the configured regex.

Armen

Thank you very much for your answer! Made my day!

Ciprian

Suggest an answer

Log in or Join to answer
Community showcase
Renan Battaglin
Published May 18, 2017 in Bamboo

FAQ: How to Upgrade Bamboo Server

Bamboo 5.9 will no longer be supported after June 12, 2017. What does this mean? As part of our End of Life policy, Atlassian supports major versions for two years after the first major iteratio...

1,064 views 0 5
Read article

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
Atlassian Team Tour

Join us on the Team Tour

We're bringing product updates and pro tips on teamwork to ten cities around the world.

Save your spot