Conditionally Skip Tasks in Bamboo Build
Asked by Justin Frost:

I have a release build plan which is manually executed when we want to create a release. There is one parent project and a bunch of child projects.

The plan build each child project if required and then builds the parent project using the latest available version of the child projects.

To make this work I need to conditionally skip the remaining tasks of a child project build if there are no changes. I do not want to fail the build, as no action is required.

I have setup a script task to compare svn revisions and if the same I want to skip all other tasks without failing the build.


Answers:
author: Przemek Bruski
body: You can't do it in Bamboo. The only way is to change all your tasks to script tasks and have the condition in the script.


author: Bo Chen
body: thanks Justin for asking this question and thanks Przemek for answering it.

we have run into similar situation. We have to create 2 plans for the same repository, one for build only, the other one for build and deployment. The reason behind is that we have a delicate build server and we can't flood it with too many build packages.

It looks to me a legitimate requirement to have conditional build tasks, i.e. skip a job/task when a certain condition holds true. I believe there are enormous use cases for this feature. However, as Przemek mentioned, it's not currently supported.

Is there any particular reason why Bamboo doesn't want to do this, or, it's just a feature nice to have, but the engineer team doesn't have time.

Also , we try to avoid having duplicated build plans for different deployment settings (there is a maintenance overhead to syn those duplicated plans). if you any suggestions, please let us know. thanks!


author: Phil Rittenhouse
body: Does a feature request exist for this? I would vote for it

comments: author: Ondra Medek
body: Yes, <https://jira.atlassian.com/browse/BAM-11257>


author: Bharath
body: Use this plugin to conditionally skip tasks.

[https://marketplace.atlassian.com/apps/1219706/conditional-tasks-for-bamboo?hosting=server\&tab=overview](https://marketplace.atlassian.com/apps/1219706/conditional-tasks-for-bamboo?hosting=server&tab=overview)

You can skip tasks based on a**Variable** or **Username**

This plugin works only on bamboo **6.7.0** or higher.

comments: author: Phil Rittenhouse
body: Thanks Bharath! Unfortunately we are still running 6.3 so I'll have to wait until we upgrade before I can give it a try.

The documentation link takes me to a bitbucket repo but I don't see anything more than the license. Do you have any examples to get people started?


author: Bharath
body: Hi Phil,

Yes I know there is no documentation, that's annoying.

But using this is pretty simple.

Just while configuring the tasks, there appears a check box named Conditional task, check that.

And then you can configure it to conditionally execute based on a Variable or Username


author: Shyju Eswaramangalath
body: Hi,

Is this feature available we are on bamboo version 6.9.1 and it is not working with various options I've tried, can you give me any example or send us any screen shots.

with regards

Shyju


author: Jeyanthan I
body: Hey Shyju,

I see there is some information in the README file of the respective repository here: <https://bitbucket.org/atlassianlabs/bamboo-conditional-tasks/src/master/>.

Hope that helps.

Cheers,  
Jey


Tags: bamboo-administration