We have a repository with multiple services that should be built and deployed individually, but are all related. Since there's just one repository, it makes sense to not configure the same repository many times as plan repositories (also, plan repositories are marked as deprecated in the docs and will be removed in the future). Although, this is of course an option, one repository configuration for each plan, where only specific directories are included for each.
I don't really require a sparse checkout, but I would like to have polling trigger only on changes to files in specific directories. So we don't kick off 10-20 builds and deployments every time we push a commit.
I'd also like builds to happen automatically, and deployment to staging to be automatic on changes to the master branch, but not for unchanged services.
In Jenkins this is quite easy, as you can poll specific sub-directories or files, but triggers seem very limited in Bamboo.
You should be able to achieve what you want by using the regex feature of change detection.
Configure the plan, goto the Repositories tab and select your repository.
Scroll down to the bottom and expand Advanced Options.
There is a dropdown for "Include / exclude files", select "Include only changes that matches to the following pattern" then a textbox will appear underneath it where you can specify a regular expression to express your subdirectory.
This is discussed in an old community post.. https://community.atlassian.com/t5/Bamboo-questions/Is-there-a-way-to-trigger-a-Bamboo-build-on-changes-to-a/qaq-p/247407
Atlassian support - Bamboo
G’day Community! As we gear up to introduce Bamboo Data Center to the world, we wanted to make sure that we shared a bit more about Bamboo, the product. Our team has put together an overview video ...
Connect with like-minded Atlassian users at free events near you!Find an event
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no Community Events near you at the moment.Host an event
You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events