We’re currently developing a server/client application. The server is a maven Java EE project. The client interfaces are in HTML5. We use Stateless REST interfaces to communicate with each other. As there are two subteams in our project team, we decided it was a good thing to separate the server and client interfaces in two git repositories (web dev team doesn’t need the server for developing/testing interfaces, and vice versa).
However, when it comes to packaging, we use git subtrees to install the web interfaces in the server projet before launching mvn package
.
We recently have felt the need for a CI server, and we went for Bamboo, as we already use Jira and Confluence in our company.
Is there a way to make Bamboo actually do the web interfaces integration before packaging so we don’t have to use git subtree
?
It is possible to build from two repos in one Bamboo plan.
Build plans allow multiple repositories. The first and default task in a plan is a source code checkout for the repo. You can then add another source code checkout task for the second repo (with an optional checkout directory)
The other option is to have a build plan for your web interfaces that gets shared as an artifact. Then the server build plan can download the web artifact using the “Artifact download” task.
1