The Atlassian Community Forums are currently in read-only mode. We will be relaunching on a new platform on September 22 (read more here). We apologize for the extended downtime. For concerns or questions, please email communitymanagers@atlassian.com. See you on the other side, on the new Atlassian Community Forums! :)

×

Forums

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

Check changed files in pull request

Kyle Nicholls
May 14, 2014

I'm writing a plugin that will flag changed files in a pull request and block it from being merged.

I have a merge request check, the only part I can figure out is how to get a list of files changed for the pull request. I see these is a simple way to get changed files from rest api, is there a good way to do this in a plugin?

3 answers

1 accepted

Comments for this post are closed

Community moderators have prevented the ability to post new answers.

1 vote
Answer accepted
Michael Heemskerk
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
May 14, 2014

Hi Kyle,

I think you're looking for PullRequestService#streamChanges

Cheers,

Michael

Kyle Nicholls
May 15, 2014

That was quick, thanks! Exactly what I was looking for. I looked at that page before but thought it was just for managing comments on a pull request.

anil kumar
May 22, 2014

Hi All,

I tried to implement for pullrequest#streamChanges

pullRequestService.streamChanges(prOpEvent.getPullRequest().getToRef().getRepository().getId(), prOpEvent.getPullRequest().getId(), new ChangeCallback() {

@Override

public void onStart() throws IOException { }

@Override

public void onEnd(boolean arg0) throws IOException { }

@Override

public boolean onChange(Change change) throws IOException {

//filePath = change.getPath().getName();

//here im updating the file paths to

update_merge_digite_zendesk_merge(change.getPath().getName());

return false;

}

});

I commited the mutiple files but im not getting all of them..

same problem im facing wit commitservice#streamChanges().

FYI,

https://answers.atlassian.com/questions/281740/how-to-get-the-modified-file-name-with-pullrequest?page=1#comment-298210

Regards

Anil

Kyle Nicholls
May 22, 2014
return false;

In your onChange method when you return false this ends the change stream. Return true to tell it to grab the next change.

https://developer.atlassian.com/static/javadoc/stash/2.10.2/api/reference/com/atlassian/stash/content/ChangeCallback.html

Also you're using a deprecated method, you should do something like this instead:

pullRequestService.streamChanges(new PullRequestChangesRequest.Builder(pullRequest).build(), new ChangeCallback() {

0 votes
anil kumar
May 22, 2014

Thanks Kyle.

return false was the problem..

Kyle Nicholls
May 22, 2014

No problem! Glad I could help.

anil kumar
May 28, 2014

Hi Kyle,

I have problem while creating pull requests with REST API and posted in this

https://answers.atlassian.com/questions/296102/mutiple-pull-requests-with-command-prompt-and-not-with-stash-server

Any suggestion please.

0 votes
anil kumar
May 22, 2014

hi Kyle,

Good point...Il check and let you know

Thanks

Anil

TAGS
AUG Leaders

Atlassian Community Events