Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

ScriptRunner for Bitbucket - Auto-add reviewers PRs with changes to specific paths

Alex Christensen
Community Champion
November 13, 2018

I've been using ScriptRunner for Jira for a long time now, but I've just started using ScriptRunner for Bitbucket and I'm having some issues trying to figure out how to write conditions properly. I'm currently trying to add a condition to auto-add a particular user as a reviewer for a PR if there are changes to a specific path using the "Auto add reviewers to pull requests" event handler (documented here).

For testing, I'm just trying add myself as a reviewer. This is current groovy script I'm using as a condition:

pathsMatch('glob:repo/path/to/file/**') || pathsMatch('glob:repo/other/path/for/auto/add/**')

I have also tried this:

def pullRequest = event.pullRequest

pullRequest.pathsMatch('glob:repo/path/to/file/**', pullRequest.getCommits()) || pullRequest.pathsMatch('glob:repo/other/path/for/auto/add/**', pullRequest.getCommits())

These scripted conditions aren't working for me, though. Am I using an incorrect syntax? I also don't understand if I'm supposed to be include the repo name or not if this script event handler is configured on a single repo.

1 answer

1 accepted

Suggest an answer

Log in or Sign up to answer
1 vote
Answer accepted
Alex Christensen
Community Champion
November 28, 2018

I was able to figure this out. The syntax inside the pathsMatch() function should not include the repo name as part of the path name. In my first example above, I just shouldn't have included "repo" in the path name.

I also realized that the reviewer is added to the "Reviewers" field before the PR is actually created, not after, so that was helpful in troubleshooting. I was also trying to add myself as a reviewer to my own PRs, but you can't add yourself as a reviewer on your own PRs, so that was another issue. :)

M Bleyer February 3, 2023

I am trying to do the same thing, what was the exact code you used in the end?

 

E.g. this also worked for me:

event.pullRequest.pathsMatch("glob:**substring_in_pathname**")
TAGS
AUG Leaders

Atlassian Community Events