Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,293,780
Community Members
 
Community Events
165
Community Groups

Is it possible to generate pull requests via scriptrunner for bitbucket server?

Edited

Summary Question: Can I generate a pull request using scriptrunner for bitbucket server?


Background:

I am working on a certain workflow that requires PRs to multiple branches when a change needs to be made, and right now individuals must create all 3 PRs by hand (or in some cases with custom scripts that use bitbucket API).

I am interested in finding a way to generate 2 of the PRs when 1 is created, or perhaps I will decide to generate all 3 PRs based on some other event.

I learned from this page how to implement a custom listener:

https://scriptrunner.adaptavist.com/6.9.2/bitbucket/StashEventHandlers.html#_working_with_custom_listeners



However, my challenge is not on triggering the event, but it is in finding how to cause another event to occur, specifically the generation of a pull request.

I did find this: https://community.atlassian.com/t5/Marketplace-Apps-Integrations/Automatically-create-master-branch-on-repository-creation/qaq-p/94060

which led me to this: https://gist.github.com/jechlin/6365d2e3c0ef4b94deb636db9c2cde7d

That gave me hope that maybe it was possible to do what I am trying to do, since this script also causes an event to occur.

 

I also consulted the atlassian documentation. There I found 2 docs that seemed to be a promising way to create a Pull Request using ScriptRunner.

 https://docs.atlassian.com/bitbucket-server/javadoc/6.7.1/api/index.html?com/atlassian/

Then search: "com.atlassian.bitbucket.pull"


From what I can see we would:

Use PullRequestService to create a pull request (interface).

Use PullRequestCreateRequest class as parameter for class that implements PullRequestService.

 

Unfortunately without any concrete examples, there will be a lot of trial and error and guessing how to put the pieces of this code together, and it might not work when all is said and done, but here's hoping!

Additionally, if you have other suggestions for accomplishing the same task, I would also welcome those suggestions. Any insight is greatly appreciated!

1 answer

Hi @rgewondjan ,

We have recently added a script to our Adaptavist Library that shows you how to use the PullRequestService to programmatically create Pull Requests using ScriptRunner for Bitbucket.

The script is available here: https://library.adaptavist.com/entity/create-a-pull-request

Kind regards,

Robert Giddings,

Product Manager, ScriptRunner for Bitbucket

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Bitbucket

Git push size limits are coming to Bitbucket Cloud starting April 4th, 2022

Beginning on April 4th, we will be implementing push limits. This means that your push cannot be completed if it is over 3.5 GB. If you do attempt to complete a push that is over 3.5 GB, it will fail...

2,115 views 2 9
Read article

Community Events

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

Events near you