A Bamboo Build Plan has several stages. Each of the stages is triggered by a specific branch of a linked remote Bitbucket repository. After the stage of the Bamboo build plan completes successfully, the linked Bamboo deployment environment tasks are triggered.
What specifically do I need to do in order to get the completed deployment environment tasks in Bamboo to trigger a merge of the remote Bitbucket repository code to the next highest branch?
If a merge to the next highest branch in the remote Bitbucket can be triggered from Bamboo at the end of the deployment environment tasks, then that would trigger the running of the next stage of the Bamboo build plan. So that the Bamboo build plan pipeline could continue.
Surely this functionality has been developed and tested, because this auto-merging to the next highest level is an essential enabling technology for a continuous delivery pipeline.
Please try using this REST API to trigger Pull Request Merge.
Since it require Pull Request ID, please use the workaround in this feature request:
https://jira.atlassian.com/browse/BAM-18350 (replace bamboo_repository_revision_number with bamboo_planRepository_revision for deployment)
Hi Username,
Did you try this variable to print the branch name of the linked repository
${bamboo.planRepository.<position>.branchName}
as described in the default variables page?
where position is the name of the branch in the repository
if your intention is to just print the repository URL, this might help.
${bamboo.planRepository.<position>.repositoryUrl}
Otherwise what error do you get when you use it?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
If a developer already knows the value of the <position> variable, then the user already knows the information required to successfully merge. The question above assumes that the developer does NOT know the value of the <position> variable. The solution to this problem seems to involve using raw git commands because the Bitbucket layer does not seem to model this. Also note that the merging is being done from a remote git repo on the build server to a central git repo on the Bitbucket server. Your answer does not address these aspects.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
For your use case, is it possible for you to utilise one of the bamboo's automatic merge strategies to do the merge instead of relying on automatic merge in Bitbucket?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You will see why your suggestion would not apply if you re-read the first paragraph of the question above.
"A Bamboo Build Plan has several stages. Each of the stages is triggered by a specific branch of a linked remote Bitbucket repository. After the stage of the Bamboo build plan completes successfully, the linked Bamboo deployment environment tasks are triggered."
As you can read in the first paragraph, this implementation needs a release pipeline, and the Build Plan Stages are being used to implement the release pipeline. In the past, we did examine plan branching, but none of the Atlassian documentation indicated that a pipeline could be created using plan branching. The only logical way to organize a pipeline using the objects available in Bamboo seems to be to utilize Plan Stages as the model for Pipeline Stages, and to have success at each Plan Stage trigger deployment to a specified environment.
At the moment, we are focusing on raw git commands and the Bitbucket REST API.
If you can show how to implement a release pipeline with clear stages using plan branching, for the use case described in this question, then it would make sense to explore automatic merging strategies again in more detail.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.