rcextensions hook for pull request comment
There is no hook in rcextensions for when a comment is added on a pull request. I need that hook, because I am writing a bot and I would like users to be able to send commands to this bot using comments. For example, a user would add a comment "@buildbot trigger", and the rcextensions hook would send a request to our CI server.
The closest hook available is
_review_pull_request_hook, but it's only when a comment of a reviewer changes the status through a comment.
Interestingly, webhooks can already react on new comments when the box "pullrequest commented" is checked. I don't see a way to reference the content of the comment though, so it does not seems very useful.
#1 Updated by Olivier Renaud 4 months ago
I found a workaround. It relies on adding a sqlalchemy hook in rcextensions.
from rhodecode.model.db import ChangesetComment import sqlalchemy @sqlalchemy.event.listens_for(ChangesetComment, 'after_insert') def react_on_comment(_mapper, _connection, comment): text = comment.text author = comment.author.username pr = comment.pull_request # do cool things here
We've built a proper rcextensions logic for this now. Thanks for this ticket, it really helped us understand this case, and even now internally we're coding some "chat-ops" style logic for sending commands via comments. I've added an example here how to do some trigger based on comment text:
We'll also now do an extension on top of integrations logic to support those two new cases of comment_on_commit, and comment_on_pull_request !
#4 Updated by Redmine Integration 3 months ago
- Status changed from In Progress to Resolved
de8db8daf7bb by Daniel Dourvaris firstname.lastname@example.org on
default branch changed this issue.