My organization uses Stash v3.11.1 and the plugin Adaptavist ScriptRunner. An issue has recently come up where we want to prevent the user from creating pull requests between certain branches with a given prefix.
For example we want to block any branch with the prefix "team/" from being able to be merged into a branch that is prefixed with "release/"
team/a_team_branch ---> release/v1.0 would be blocked and pull request not created
bugfix/a_users_bugfix_branch ---> release/v1.0 a pull request could be created
How would I go about doing this with ScriptRunner?
You want Admin -> Script Event Handlers, new Custom event handler.
Event to listen for is: PullRequestOpenRequestedEvent
Code (put in file or enter directly):
import com.atlassian.bitbucket.event.pull.PullRequestOpenRequestedEvent def event = event as PullRequestOpenRequestedEvent def from = event.pullRequest.fromRef.displayId def to = event.pullRequest.toRef.displayId if (from.startsWith("team/") && to.startsWith("release/")) { event.cancel("Don't create PR from team/* to release/* ... target branch should be Xyz") }
Should result in:
http://postimg.org/image/aafyd6ykt/
(image upload seems broken).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.